<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><link rel="stylesheet" type="text/css" href="style.css" /><script type="text/javascript" src="highlight.js"></script></head><body><pre><span class="hs-pragma">{-# LANGUAGE ConstraintKinds       #-}</span><span>
</span><span id="line-2"></span><span class="hs-pragma">{-# LANGUAGE FlexibleInstances     #-}</span><span>
</span><span id="line-3"></span><span class="hs-pragma">{-# LANGUAGE MultiParamTypeClasses #-}</span><span>
</span><span id="line-4"></span><span class="hs-pragma">{-# LANGUAGE OverloadedStrings     #-}</span><span>
</span><span id="line-5"></span><span class="hs-pragma">{-# LANGUAGE RecordWildCards       #-}</span><span>
</span><span id="line-6"></span><span class="hs-keyword">module</span><span> </span><span class="hs-identifier">Distribution.Types.InstalledPackageInfo.FieldGrammar</span><span> </span><span class="hs-special">(</span><span>
</span><span id="line-7"></span><span>    </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-identifier">ipiFieldGrammar</span></a></span><span class="hs-special">,</span><span>
</span><span id="line-8"></span><span>    </span><span class="hs-special">)</span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-9"></span><span>
</span><span id="line-10"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Compat.Prelude.html"><span class="hs-identifier">Distribution.Compat.Prelude</span></a></span><span>
</span><span id="line-11"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="../../base/src/Prelude.html#"><span class="hs-identifier">Prelude</span></a></span><span> </span><span class="hs-special">(</span><span class="hs-special">)</span><span>
</span><span id="line-12"></span><span>
</span><span id="line-13"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Backpack.html"><span class="hs-identifier">Distribution.Backpack</span></a></span><span>
</span><span id="line-14"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.CabalSpecVersion.html"><span class="hs-identifier">Distribution.CabalSpecVersion</span></a></span><span>
</span><span id="line-15"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html"><span class="hs-identifier">Distribution.Compat.Lens</span></a></span><span>               </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier">Lens'</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator">(&amp;)</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#.~"><span class="hs-operator">(.~)</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-16"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Compat.Newtype.html"><span class="hs-identifier">Distribution.Compat.Newtype</span></a></span><span>
</span><span id="line-17"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.html"><span class="hs-identifier">Distribution.FieldGrammar</span></a></span><span>
</span><span id="line-18"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.FieldDescrs.html"><span class="hs-identifier">Distribution.FieldGrammar.FieldDescrs</span></a></span><span>
</span><span id="line-19"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.License.html"><span class="hs-identifier">Distribution.License</span></a></span><span>
</span><span id="line-20"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.ModuleName.html"><span class="hs-identifier">Distribution.ModuleName</span></a></span><span>
</span><span id="line-21"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Package.html"><span class="hs-identifier">Distribution.Package</span></a></span><span>
</span><span id="line-22"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Parsec.html"><span class="hs-identifier">Distribution.Parsec</span></a></span><span>
</span><span id="line-23"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Pretty.html"><span class="hs-identifier">Distribution.Pretty</span></a></span><span>
</span><span id="line-24"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryName.html"><span class="hs-identifier">Distribution.Types.LibraryName</span></a></span><span>
</span><span id="line-25"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryVisibility.html"><span class="hs-identifier">Distribution.Types.LibraryVisibility</span></a></span><span>
</span><span id="line-26"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html"><span class="hs-identifier">Distribution.Types.MungedPackageName</span></a></span><span>
</span><span id="line-27"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Types.UnqualComponentName.html"><span class="hs-identifier">Distribution.Types.UnqualComponentName</span></a></span><span>
</span><span id="line-28"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Version.html"><span class="hs-identifier">Distribution.Version</span></a></span><span>
</span><span id="line-29"></span><span>
</span><span id="line-30"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="../../base/src/Data.Char.html#"><span class="hs-identifier">Data.Char</span></a></span><span>                       </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">Char</span></span><span>
</span><span id="line-31"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="../../containers/src/Data.Map.html#"><span class="hs-identifier">Data.Map</span></a></span><span>                        </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">Map</span></span><span>
</span><span id="line-32"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="Distribution.Compat.CharParsing.html"><span class="hs-identifier">Distribution.Compat.CharParsing</span></a></span><span> </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">P</span></span><span>
</span><span id="line-33"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="Distribution.SPDX.html"><span class="hs-identifier">Distribution.SPDX</span></a></span><span>               </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">SPDX</span></span><span>
</span><span id="line-34"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="../../pretty/src/Text.PrettyPrint.html#"><span class="hs-identifier">Text.PrettyPrint</span></a></span><span>                </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">Disp</span></span><span>
</span><span id="line-35"></span><span>
</span><span id="line-36"></span><span class="hs-keyword">import</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html"><span class="hs-identifier">Distribution.Types.InstalledPackageInfo</span></a></span><span>
</span><span id="line-37"></span><span>
</span><span id="line-38"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.Lens.html"><span class="hs-identifier">Distribution.Types.InstalledPackageInfo.Lens</span></a></span><span> </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">L</span></span><span>
</span><span id="line-39"></span><span class="hs-keyword">import</span><span> </span><span class="hs-keyword">qualified</span><span> </span><span class="annot"><a href="Distribution.Types.PackageId.Lens.html"><span class="hs-identifier">Distribution.Types.PackageId.Lens</span></a></span><span>            </span><span class="hs-keyword">as</span><span> </span><span class="annot"><span class="hs-identifier">L</span></span><span>
</span><span id="line-40"></span><span>
</span><span id="line-41"></span><span class="hs-comment">-- Note: GHC goes nuts and inlines everything,</span><span>
</span><span id="line-42"></span><span class="hs-comment">-- One can see e.g. in -ddump-simpl-stats:</span><span>
</span><span id="line-43"></span><span class="hs-comment">--</span><span>
</span><span id="line-44"></span><span class="hs-comment">-- 34886 KnownBranch</span><span>
</span><span id="line-45"></span><span class="hs-comment">--  8197 wild1_ixF0</span><span>
</span><span id="line-46"></span><span class="hs-comment">--</span><span>
</span><span id="line-47"></span><span class="hs-comment">-- https://gitlab.haskell.org/ghc/ghc/-/issues/13253 might be the cause.</span><span>
</span><span id="line-48"></span><span class="hs-comment">--</span><span>
</span><span id="line-49"></span><span class="hs-comment">-- The workaround is to prevent GHC optimising the code:</span><span>
</span><span id="line-50"></span><span class="hs-keyword">infixl</span><span> </span><span class="hs-number">4</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-type">&lt;@&gt;</span></a></span><span>
</span><span id="line-51"></span><span id="local-6989586621679705494"><span id="local-6989586621679705495"><span id="local-6989586621679705496"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-type">(&lt;@&gt;)</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#Applicative"><span class="hs-identifier hs-type">Applicative</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705496"><span class="hs-identifier hs-type">f</span></a></span><span> </span><span class="hs-glyph">=&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705496"><span class="hs-identifier hs-type">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="#local-6989586621679705495"><span class="hs-identifier hs-type">a</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705494"><span class="hs-identifier hs-type">b</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705496"><span class="hs-identifier hs-type">f</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705495"><span class="hs-identifier hs-type">a</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705496"><span class="hs-identifier hs-type">f</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705494"><span class="hs-identifier hs-type">b</span></a></span></span></span></span><span>
</span><span id="line-52"></span><span id="local-6989586621679705139"><span class="annot"><span class="annottext">f (a -&gt; b)
</span><a href="#local-6989586621679705139"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="%3C%40%3E"><span class="annot"><span class="annottext">&lt;@&gt; :: forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var hs-var">&lt;@&gt;</span></a></span></span><span> </span><span id="local-6989586621679705138"><span class="annot"><span class="annottext">f a
</span><a href="#local-6989586621679705138"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">f (a -&gt; b)
</span><a href="#local-6989586621679705139"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">f (a -&gt; b) -&gt; f a -&gt; f b
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#%3C%2A%3E"><span class="hs-operator hs-var">&lt;*&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">f a
</span><a href="#local-6989586621679705138"><span class="hs-identifier hs-var">x</span></a></span><span>
</span><span id="line-53"></span><span class="hs-pragma">{-# NOINLINE</span><span> </span><span class="hs-pragma">(</span><span class="hs-pragma">&lt;@&gt;</span><span class="hs-pragma">)</span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-54"></span><span>
</span><span id="line-55"></span><span id="local-6989586621679705486"><span id="local-6989586621679705487"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-identifier hs-type">ipiFieldGrammar</span></a></span><span>
</span><span id="line-56"></span><span>    </span><span class="hs-glyph">::</span><span> </span><span class="hs-special">(</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Class.html#FieldGrammar"><span class="hs-identifier hs-type">FieldGrammar</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705486"><span class="hs-identifier hs-type">g</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#Applicative"><span class="hs-identifier hs-type">Applicative</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="#local-6989586621679705486"><span class="hs-identifier hs-type">g</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span class="hs-special">)</span><span class="hs-special">,</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#Applicative"><span class="hs-identifier hs-type">Applicative</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="#local-6989586621679705486"><span class="hs-identifier hs-type">g</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-57"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.AbiHash.html#AbiHash"><span class="hs-identifier hs-type">AbiHash</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-58"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibility"><span class="hs-identifier hs-type">LibraryVisibility</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-59"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-60"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.UnitId.html#UnitId"><span class="hs-identifier hs-type">UnitId</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-61"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.UnqualComponentName.html#UnqualComponentName"><span class="hs-identifier hs-type">UnqualComponentName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-62"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#List"><span class="hs-identifier hs-type">List</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-type">FSep</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.AbiDependency.html#AbiDependency"><span class="hs-identifier hs-type">AbiDependency</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><a href="Distribution.Types.AbiDependency.html#AbiDependency"><span class="hs-identifier hs-type">AbiDependency</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-63"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#List"><span class="hs-identifier hs-type">List</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-type">FSep</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.UnitId.html#UnitId"><span class="hs-identifier hs-type">UnitId</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><a href="Distribution.Types.UnitId.html#UnitId"><span class="hs-identifier hs-type">UnitId</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-64"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#List"><span class="hs-identifier hs-type">List</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-type">FSep</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-type">MQuoted</span></a></span><span> </span><span class="annot"><a href="Distribution.ModuleName.html#ModuleName"><span class="hs-identifier hs-type">ModuleName</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><a href="Distribution.ModuleName.html#ModuleName"><span class="hs-identifier hs-type">ModuleName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-65"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#List"><span class="hs-identifier hs-type">List</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-type">FSep</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-type">FilePathNT</span></a></span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#String"><span class="hs-identifier hs-type">String</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-66"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#List"><span class="hs-identifier hs-type">List</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-type">FSep</span></a></span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-type">Token</span></a></span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#String"><span class="hs-identifier hs-type">String</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-67"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-type">MQuoted</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-68"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-type">MQuoted</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.Version.html#Version"><span class="hs-identifier hs-type">Version</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-69"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-type">CompatPackageKey</span></a></span><span>
</span><span id="line-70"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-type">ExposedModules</span></a></span><span>
</span><span id="line-71"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-type">InstWith</span></a></span><span>
</span><span id="line-72"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705487"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-type">SpecLicenseLenient</span></a></span><span>
</span><span id="line-73"></span><span>       </span><span class="hs-special">)</span><span>
</span><span id="line-74"></span><span>    </span><span class="hs-glyph">=&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705486"><span class="hs-identifier hs-type">g</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span></span></span><span>
</span><span id="line-75"></span><span id="ipiFieldGrammar"><span class="annot"><span class="annottext">ipiFieldGrammar :: forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *).
(FieldGrammar c g, Applicative (g InstalledPackageInfo),
 Applicative (g Basic), c (Identity AbiHash),
 c (Identity LibraryVisibility), c (Identity PackageName),
 c (Identity UnitId), c (Identity UnqualComponentName),
 c (List FSep (Identity AbiDependency) AbiDependency),
 c (List FSep (Identity UnitId) UnitId),
 c (List FSep (MQuoted ModuleName) ModuleName),
 c (List FSep FilePathNT String), c (List FSep Token String),
 c (MQuoted MungedPackageName), c (MQuoted Version),
 c CompatPackageKey, c ExposedModules, c InstWith,
 c SpecLicenseLenient) =&gt;
g InstalledPackageInfo InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-identifier hs-var hs-var">ipiFieldGrammar</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[String]
-&gt; Basic
-&gt; UnitId
-&gt; [(ModuleName, OpenModule)]
-&gt; String
-&gt; Either License License
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; AbiHash
-&gt; Bool
-&gt; Bool
-&gt; [ExposedModule]
-&gt; [ModuleName]
-&gt; Bool
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; String
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [UnitId]
-&gt; [AbiDependency]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; Maybe String
-&gt; InstalledPackageInfo
forall {p}.
p
-&gt; Basic
-&gt; UnitId
-&gt; [(ModuleName, OpenModule)]
-&gt; String
-&gt; Either License License
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; AbiHash
-&gt; Bool
-&gt; Bool
-&gt; [ExposedModule]
-&gt; [ModuleName]
-&gt; Bool
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; String
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [UnitId]
-&gt; [AbiDependency]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; Maybe String
-&gt; InstalledPackageInfo
</span><a href="#local-6989586621679704843"><span class="hs-identifier hs-var">mkInstalledPackageInfo</span></a></span><span>
</span><span id="line-76"></span><span>    </span><span class="hs-comment">-- Deprecated fields</span><span>
</span><span id="line-77"></span><span>    </span><span class="annot"><span class="annottext">([String]
 -&gt; Basic
 -&gt; UnitId
 -&gt; [(ModuleName, OpenModule)]
 -&gt; String
 -&gt; Either License License
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; ShortText
 -&gt; AbiHash
 -&gt; Bool
 -&gt; Bool
 -&gt; [ExposedModule]
 -&gt; [ModuleName]
 -&gt; Bool
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; String
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [UnitId]
 -&gt; [AbiDependency]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; [String]
 -&gt; Maybe String
 -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     (Basic
      -&gt; UnitId
      -&gt; [(ModuleName, OpenModule)]
      -&gt; String
      -&gt; Either License License
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;hugs-options&quot;</span></span><span>         </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
forall a b. Lens' a [b]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#unitedList"><span class="hs-identifier hs-var">unitedList</span></a></span><span>
</span><span id="line-78"></span><span>        </span><span class="hs-comment">--- https://github.com/haskell/cabal/commit/40f3601e17024f07e0da8e64d3dd390177ce908b</span><span>
</span><span id="line-79"></span><span>        </span><span class="annot"><span class="annottext">g InstalledPackageInfo [String]
-&gt; (g InstalledPackageInfo [String]
    -&gt; g InstalledPackageInfo [String])
-&gt; g InstalledPackageInfo [String]
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.FieldGrammar.html#%5E%5E%5E"><span class="hs-operator hs-var">^^^</span></a></span><span> </span><span class="annot"><span class="annottext">CabalSpecVersion
-&gt; String
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s a.
FieldGrammar c g =&gt;
CabalSpecVersion -&gt; String -&gt; g s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#deprecatedSince"><span class="hs-identifier hs-var">deprecatedSince</span></a></span><span> </span><span class="annot"><span class="annottext">CabalSpecVersion
</span><a href="Distribution.CabalSpecVersion.html#CabalSpecV1_22"><span class="hs-identifier hs-var">CabalSpecV1_22</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;hugs isn't supported anymore&quot;</span></span><span>
</span><span id="line-80"></span><span>    </span><span class="hs-comment">-- Very basic fields: name, version, package-name, lib-name and visibility</span><span>
</span><span id="line-81"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (Basic
   -&gt; UnitId
   -&gt; [(ModuleName, OpenModule)]
   -&gt; String
   -&gt; Either License License
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo Basic
-&gt; g InstalledPackageInfo
     (UnitId
      -&gt; [(ModuleName, OpenModule)]
      -&gt; String
      -&gt; Either License License
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo Basic
-&gt; g Basic Basic -&gt; g InstalledPackageInfo Basic
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) a b d.
FieldGrammar c g =&gt;
ALens' a b -&gt; g b d -&gt; g a d
</span><a href="Distribution.FieldGrammar.Class.html#blurFieldGrammar"><span class="hs-identifier hs-var">blurFieldGrammar</span></a></span><span> </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo Basic
Lens' InstalledPackageInfo Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basic"><span class="hs-identifier hs-var">basic</span></a></span><span> </span><span class="annot"><span class="annottext">g Basic Basic
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *).
(FieldGrammar c g, Applicative (g Basic),
 c (Identity LibraryVisibility), c (Identity PackageName),
 c (Identity UnqualComponentName), c (MQuoted MungedPackageName),
 c (MQuoted Version)) =&gt;
g Basic Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicFieldGrammar"><span class="hs-identifier hs-var">basicFieldGrammar</span></a></span><span>
</span><span id="line-82"></span><span>    </span><span class="hs-comment">-- Basic fields</span><span>
</span><span id="line-83"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (UnitId
   -&gt; [(ModuleName, OpenModule)]
   -&gt; String
   -&gt; Either License License
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo UnitId
-&gt; g InstalledPackageInfo
     ([(ModuleName, OpenModule)]
      -&gt; String
      -&gt; Either License License
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo UnitId
-&gt; UnitId
-&gt; g InstalledPackageInfo UnitId
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s a.
(FieldGrammar c g, Functor (g s), c (Identity a), Eq a) =&gt;
FieldName -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDef"><span class="hs-identifier hs-var">optionalFieldDef</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;id&quot;</span></span><span>                                                 </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo UnitId
Lens' InstalledPackageInfo UnitId
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#installedUnitId"><span class="hs-identifier hs-var">L.installedUnitId</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; UnitId
</span><a href="Distribution.Types.UnitId.html#mkUnitId"><span class="hs-identifier hs-var">mkUnitId</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-84"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([(ModuleName, OpenModule)]
   -&gt; String
   -&gt; Either License License
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [(ModuleName, OpenModule)]
-&gt; g InstalledPackageInfo
     (String
      -&gt; Either License License
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([(ModuleName, OpenModule)] -&gt; InstWith)
-&gt; ALens' InstalledPackageInfo [(ModuleName, OpenModule)]
-&gt; [(ModuleName, OpenModule)]
-&gt; g InstalledPackageInfo [(ModuleName, OpenModule)]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;instantiated-with&quot;</span></span><span>    </span><span class="annot"><span class="annottext">[(ModuleName, OpenModule)] -&gt; InstWith
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-var">InstWith</span></a></span><span>                      </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [(ModuleName, OpenModule)]
Lens' InstalledPackageInfo [(ModuleName, OpenModule)]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#instantiatedWith"><span class="hs-identifier hs-var">L.instantiatedWith</span></a></span><span> </span><span class="hs-special">[</span><span class="hs-special">]</span><span>
</span><span id="line-85"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (String
   -&gt; Either License License
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo String
-&gt; g InstalledPackageInfo
     (Either License License
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (String -&gt; CompatPackageKey)
-&gt; ALens' InstalledPackageInfo String
-&gt; String
-&gt; g InstalledPackageInfo String
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;key&quot;</span></span><span>                  </span><span class="annot"><span class="annottext">String -&gt; CompatPackageKey
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-var">CompatPackageKey</span></a></span><span>              </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo String
Lens' InstalledPackageInfo String
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#compatPackageKey"><span class="hs-identifier hs-var">L.compatPackageKey</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-86"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (Either License License
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo (Either License License)
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (Either License License -&gt; SpecLicenseLenient)
-&gt; ALens' InstalledPackageInfo (Either License License)
-&gt; Either License License
-&gt; g InstalledPackageInfo (Either License License)
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;license&quot;</span></span><span>              </span><span class="annot"><span class="annottext">Either License License -&gt; SpecLicenseLenient
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-var">SpecLicenseLenient</span></a></span><span>            </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo (Either License License)
Lens' InstalledPackageInfo (Either License License)
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#license"><span class="hs-identifier hs-var">L.license</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">License -&gt; Either License License
forall a b. a -&gt; Either a b
</span><a href="../../base/src/Data.Either.html#Left"><span class="hs-identifier hs-var">Left</span></a></span><span> </span><span class="annot"><span class="annottext">License
</span><a href="Distribution.SPDX.License.html#NONE"><span class="hs-identifier hs-var">SPDX.NONE</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-87"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;copyright&quot;</span></span><span>                                          </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#copyright"><span class="hs-identifier hs-var">L.copyright</span></a></span><span>
</span><span id="line-88"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;maintainer&quot;</span></span><span>                                         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#maintainer"><span class="hs-identifier hs-var">L.maintainer</span></a></span><span>
</span><span id="line-89"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;author&quot;</span></span><span>                                             </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#author"><span class="hs-identifier hs-var">L.author</span></a></span><span>
</span><span id="line-90"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;stability&quot;</span></span><span>                                          </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#stability"><span class="hs-identifier hs-var">L.stability</span></a></span><span>
</span><span id="line-91"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;homepage&quot;</span></span><span>                                           </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#homepage"><span class="hs-identifier hs-var">L.homepage</span></a></span><span>
</span><span id="line-92"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;package-url&quot;</span></span><span>                                        </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#pkgUrl"><span class="hs-identifier hs-var">L.pkgUrl</span></a></span><span>
</span><span id="line-93"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;synopsis&quot;</span></span><span>                                           </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#synopsis"><span class="hs-identifier hs-var">L.synopsis</span></a></span><span>
</span><span id="line-94"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (ShortText
      -&gt; AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;description&quot;</span></span><span>                                        </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#description"><span class="hs-identifier hs-var">L.description</span></a></span><span>
</span><span id="line-95"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (ShortText
   -&gt; AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo
     (AbiHash
      -&gt; Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo ShortText
-&gt; g InstalledPackageInfo ShortText
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s ShortText -&gt; g s ShortText
</span><a href="Distribution.FieldGrammar.Class.html#freeTextFieldDefST"><span class="hs-identifier hs-var">freeTextFieldDefST</span></a></span><span>  </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;category&quot;</span></span><span>                                           </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo ShortText
Lens' InstalledPackageInfo ShortText
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#category"><span class="hs-identifier hs-var">L.category</span></a></span><span>
</span><span id="line-96"></span><span>    </span><span class="hs-comment">-- Installed fields</span><span>
</span><span id="line-97"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (AbiHash
   -&gt; Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo AbiHash
-&gt; g InstalledPackageInfo
     (Bool
      -&gt; Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo AbiHash
-&gt; AbiHash
-&gt; g InstalledPackageInfo AbiHash
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s a.
(FieldGrammar c g, Functor (g s), c (Identity a), Eq a) =&gt;
FieldName -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDef"><span class="hs-identifier hs-var">optionalFieldDef</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;abi&quot;</span></span><span>                                                </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo AbiHash
Lens' InstalledPackageInfo AbiHash
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#abiHash"><span class="hs-identifier hs-var">L.abiHash</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; AbiHash
</span><a href="Distribution.Types.AbiHash.html#mkAbiHash"><span class="hs-identifier hs-var">mkAbiHash</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span class="hs-special">)</span><span>
</span><span id="line-98"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (Bool
   -&gt; Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo Bool
-&gt; g InstalledPackageInfo
     (Bool
      -&gt; [ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo Bool
-&gt; Bool
-&gt; g InstalledPackageInfo Bool
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s Bool -&gt; Bool -&gt; g s Bool
</span><a href="Distribution.FieldGrammar.Class.html#booleanFieldDef"><span class="hs-identifier hs-var">booleanFieldDef</span></a></span><span>     </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;indefinite&quot;</span></span><span>                                         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo Bool
Lens' InstalledPackageInfo Bool
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#indefinite"><span class="hs-identifier hs-var">L.indefinite</span></a></span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span>
</span><span id="line-99"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (Bool
   -&gt; [ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo Bool
-&gt; g InstalledPackageInfo
     ([ExposedModule]
      -&gt; [ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo Bool
-&gt; Bool
-&gt; g InstalledPackageInfo Bool
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s Bool -&gt; Bool -&gt; g s Bool
</span><a href="Distribution.FieldGrammar.Class.html#booleanFieldDef"><span class="hs-identifier hs-var">booleanFieldDef</span></a></span><span>     </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;exposed&quot;</span></span><span>                                            </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo Bool
Lens' InstalledPackageInfo Bool
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#exposed"><span class="hs-identifier hs-var">L.exposed</span></a></span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span>
</span><span id="line-100"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([ExposedModule]
   -&gt; [ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [ExposedModule]
-&gt; g InstalledPackageInfo
     ([ModuleName]
      -&gt; Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([ExposedModule] -&gt; ExposedModules)
-&gt; ALens' InstalledPackageInfo [ExposedModule]
-&gt; g InstalledPackageInfo [ExposedModule]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;exposed-modules&quot;</span></span><span>      </span><span class="annot"><span class="annottext">[ExposedModule] -&gt; ExposedModules
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-var">ExposedModules</span></a></span><span>                </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [ExposedModule]
Lens' InstalledPackageInfo [ExposedModule]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#exposedModules"><span class="hs-identifier hs-var">L.exposedModules</span></a></span><span>
</span><span id="line-101"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([ModuleName]
   -&gt; Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [ModuleName]
-&gt; g InstalledPackageInfo
     (Bool
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([ModuleName] -&gt; List FSep (MQuoted ModuleName) ModuleName)
-&gt; ALens' InstalledPackageInfo [ModuleName]
-&gt; g InstalledPackageInfo [ModuleName]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;hidden-modules&quot;</span></span><span>       </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (ModuleName -&gt; MQuoted ModuleName)
-&gt; [ModuleName]
-&gt; List FSep (MQuoted ModuleName) ModuleName
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">ModuleName -&gt; MQuoted ModuleName
forall a. a -&gt; MQuoted a
</span><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-var">MQuoted</span></a></span><span class="hs-special">)</span><span>       </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [ModuleName]
Lens' InstalledPackageInfo [ModuleName]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#hiddenModules"><span class="hs-identifier hs-var">L.hiddenModules</span></a></span><span>
</span><span id="line-102"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (Bool
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo Bool
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' InstalledPackageInfo Bool
-&gt; Bool
-&gt; g InstalledPackageInfo Bool
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s.
FieldGrammar c g =&gt;
FieldName -&gt; ALens' s Bool -&gt; Bool -&gt; g s Bool
</span><a href="Distribution.FieldGrammar.Class.html#booleanFieldDef"><span class="hs-identifier hs-var">booleanFieldDef</span></a></span><span>     </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;trusted&quot;</span></span><span>                                            </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo Bool
Lens' InstalledPackageInfo Bool
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#trusted"><span class="hs-identifier hs-var">L.trusted</span></a></span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span>
</span><span id="line-103"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;import-dirs&quot;</span></span><span>          </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#importDirs"><span class="hs-identifier hs-var">L.importDirs</span></a></span><span>
</span><span id="line-104"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;library-dirs&quot;</span></span><span>         </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#libraryDirs"><span class="hs-identifier hs-var">L.libraryDirs</span></a></span><span>
</span><span id="line-105"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     (String
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;dynamic-library-dirs&quot;</span></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#libraryDynDirs"><span class="hs-identifier hs-var">L.libraryDynDirs</span></a></span><span>
</span><span id="line-106"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  (String
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo String
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (String -&gt; FilePathNT)
-&gt; ALens' InstalledPackageInfo String
-&gt; String
-&gt; g InstalledPackageInfo String
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;data-dir&quot;</span></span><span>             </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span>                    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo String
Lens' InstalledPackageInfo String
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#dataDir"><span class="hs-identifier hs-var">L.dataDir</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span>
</span><span id="line-107"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;hs-libraries&quot;</span></span><span>         </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#hsLibraries"><span class="hs-identifier hs-var">L.hsLibraries</span></a></span><span>
</span><span id="line-108"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;extra-libraries&quot;</span></span><span>      </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#extraLibraries"><span class="hs-identifier hs-var">L.extraLibraries</span></a></span><span>
</span><span id="line-109"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;extra-ghci-libraries&quot;</span></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#extraGHCiLibraries"><span class="hs-identifier hs-var">L.extraGHCiLibraries</span></a></span><span>
</span><span id="line-110"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;include-dirs&quot;</span></span><span>         </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#includeDirs"><span class="hs-identifier hs-var">L.includeDirs</span></a></span><span>
</span><span id="line-111"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([UnitId]
      -&gt; [AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;includes&quot;</span></span><span>             </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#includes"><span class="hs-identifier hs-var">L.includes</span></a></span><span>
</span><span id="line-112"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([UnitId]
   -&gt; [AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [UnitId]
-&gt; g InstalledPackageInfo
     ([AbiDependency]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([UnitId] -&gt; List FSep (Identity UnitId) UnitId)
-&gt; ALens' InstalledPackageInfo [UnitId]
-&gt; g InstalledPackageInfo [UnitId]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;depends&quot;</span></span><span>              </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; [UnitId] -&gt; List FSep (Identity UnitId) UnitId
forall sep a. sep -&gt; [a] -&gt; List sep (Identity a) a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList"><span class="hs-identifier hs-var">alaList</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span class="hs-special">)</span><span>                </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [UnitId]
Lens' InstalledPackageInfo [UnitId]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#depends"><span class="hs-identifier hs-var">L.depends</span></a></span><span>
</span><span id="line-113"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([AbiDependency]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [AbiDependency]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([AbiDependency]
    -&gt; List FSep (Identity AbiDependency) AbiDependency)
-&gt; ALens' InstalledPackageInfo [AbiDependency]
-&gt; g InstalledPackageInfo [AbiDependency]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;abi-depends&quot;</span></span><span>          </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; [AbiDependency]
-&gt; List FSep (Identity AbiDependency) AbiDependency
forall sep a. sep -&gt; [a] -&gt; List sep (Identity a) a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList"><span class="hs-identifier hs-var">alaList</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span class="hs-special">)</span><span>                </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [AbiDependency]
Lens' InstalledPackageInfo [AbiDependency]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#abiDepends"><span class="hs-identifier hs-var">L.abiDepends</span></a></span><span>
</span><span id="line-114"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;cc-options&quot;</span></span><span>           </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#ccOptions"><span class="hs-identifier hs-var">L.ccOptions</span></a></span><span>
</span><span id="line-115"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;cxx-options&quot;</span></span><span>          </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#cxxOptions"><span class="hs-identifier hs-var">L.cxxOptions</span></a></span><span>
</span><span id="line-116"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String]
      -&gt; [String]
      -&gt; [String]
      -&gt; Maybe String
      -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;ld-options&quot;</span></span><span>           </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#ldOptions"><span class="hs-identifier hs-var">L.ldOptions</span></a></span><span>
</span><span id="line-117"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String]
   -&gt; [String]
   -&gt; [String]
   -&gt; Maybe String
   -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String]
      -&gt; [String] -&gt; [String] -&gt; Maybe String -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;framework-dirs&quot;</span></span><span>       </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#frameworkDirs"><span class="hs-identifier hs-var">L.frameworkDirs</span></a></span><span>
</span><span id="line-118"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String]
   -&gt; [String] -&gt; [String] -&gt; Maybe String -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String] -&gt; [String] -&gt; Maybe String -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep Token String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;frameworks&quot;</span></span><span>           </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep -&gt; (String -&gt; Token) -&gt; [String] -&gt; List FSep Token String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; Token
</span><a href="Distribution.FieldGrammar.Newtypes.html#Token"><span class="hs-identifier hs-var">Token</span></a></span><span class="hs-special">)</span><span>         </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#frameworks"><span class="hs-identifier hs-var">L.frameworks</span></a></span><span>
</span><span id="line-119"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String] -&gt; [String] -&gt; Maybe String -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo
     ([String] -&gt; Maybe String -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;haddock-interfaces&quot;</span></span><span>   </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#haddockInterfaces"><span class="hs-identifier hs-var">L.haddockInterfaces</span></a></span><span>
</span><span id="line-120"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo
  ([String] -&gt; Maybe String -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo (Maybe String -&gt; InstalledPackageInfo)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ([String] -&gt; List FSep FilePathNT String)
-&gt; ALens' InstalledPackageInfo [String]
-&gt; g InstalledPackageInfo [String]
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Monoid a, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#monoidalFieldAla"><span class="hs-identifier hs-var">monoidalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;haddock-html&quot;</span></span><span>         </span><span class="hs-special">(</span><span class="annot"><span class="annottext">FSep
-&gt; (String -&gt; FilePathNT)
-&gt; [String]
-&gt; List FSep FilePathNT String
forall sep a b. sep -&gt; (a -&gt; b) -&gt; [a] -&gt; List sep b a
</span><a href="Distribution.FieldGrammar.Newtypes.html#alaList%27"><span class="hs-identifier hs-var">alaList'</span></a></span><span> </span><span class="annot"><span class="annottext">FSep
</span><a href="Distribution.FieldGrammar.Newtypes.html#FSep"><span class="hs-identifier hs-var">FSep</span></a></span><span> </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span class="hs-special">)</span><span>    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo [String]
Lens' InstalledPackageInfo [String]
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#haddockHTMLs"><span class="hs-identifier hs-var">L.haddockHTMLs</span></a></span><span>
</span><span id="line-121"></span><span>    </span><span class="annot"><span class="annottext">g InstalledPackageInfo (Maybe String -&gt; InstalledPackageInfo)
-&gt; g InstalledPackageInfo (Maybe String)
-&gt; g InstalledPackageInfo InstalledPackageInfo
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#%3C%40%3E"><span class="hs-operator hs-var">&lt;@&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (String -&gt; FilePathNT)
-&gt; ALens' InstalledPackageInfo (Maybe String)
-&gt; g InstalledPackageInfo (Maybe String)
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s (Maybe a) -&gt; g s (Maybe a)
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldAla"><span class="hs-identifier hs-var">optionalFieldAla</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;pkgroot&quot;</span></span><span>              </span><span class="annot"><span class="annottext">String -&gt; FilePathNT
</span><a href="Distribution.FieldGrammar.Newtypes.html#FilePathNT"><span class="hs-identifier hs-var">FilePathNT</span></a></span><span>                    </span><span class="annot"><span class="annottext">ALens' InstalledPackageInfo (Maybe String)
Lens' InstalledPackageInfo (Maybe String)
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#pkgRoot"><span class="hs-identifier hs-var">L.pkgRoot</span></a></span><span>
</span><span id="line-122"></span><span>  </span><span class="hs-keyword">where</span><span>
</span><span id="line-123"></span><span>    </span><span id="local-6989586621679704843"><span class="annot"><span class="annottext">mkInstalledPackageInfo :: p
-&gt; Basic
-&gt; UnitId
-&gt; [(ModuleName, OpenModule)]
-&gt; String
-&gt; Either License License
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; AbiHash
-&gt; Bool
-&gt; Bool
-&gt; [ExposedModule]
-&gt; [ModuleName]
-&gt; Bool
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; String
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [UnitId]
-&gt; [AbiDependency]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; Maybe String
-&gt; InstalledPackageInfo
</span><a href="#local-6989586621679704843"><span class="hs-identifier hs-var hs-var">mkInstalledPackageInfo</span></a></span></span><span> </span><span class="annot"><span class="annottext">p
</span><span class="hs-identifier">_</span></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="hs-special">{</span><span id="local-6989586621679704772"><span id="local-6989586621679704773"><span id="local-6989586621679704774"><span id="local-6989586621679704775"><span id="local-6989586621679704776"><span class="annot"><span class="annottext">Maybe PackageName
Version
LibraryVisibility
LibraryName
MungedPackageName
_basicLibVisibility :: Basic -&gt; LibraryVisibility
_basicLibName :: Basic -&gt; LibraryName
_basicPkgName :: Basic -&gt; Maybe PackageName
_basicVersion :: Basic -&gt; Version
_basicName :: Basic -&gt; MungedPackageName
_basicLibVisibility :: LibraryVisibility
_basicLibName :: LibraryName
_basicPkgName :: Maybe PackageName
_basicVersion :: Version
_basicName :: MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibVisibility"><span class="hs-glyph hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var hs-var">..</span></a></span></span></span></span></span></span><span class="hs-special">}</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">PackageId
-&gt; LibraryName
-&gt; ComponentId
-&gt; LibraryVisibility
-&gt; UnitId
-&gt; [(ModuleName, OpenModule)]
-&gt; String
-&gt; Either License License
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; ShortText
-&gt; AbiHash
-&gt; Bool
-&gt; Bool
-&gt; [ExposedModule]
-&gt; [ModuleName]
-&gt; Bool
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; String
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [UnitId]
-&gt; [AbiDependency]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; [String]
-&gt; Maybe String
-&gt; InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-var">InstalledPackageInfo</span></a></span><span>
</span><span id="line-124"></span><span>        </span><span class="hs-comment">-- _basicPkgName is not used</span><span>
</span><span id="line-125"></span><span>        </span><span class="hs-comment">-- setMaybePackageId says it can be no-op.</span><span>
</span><span id="line-126"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">PackageName -&gt; Version -&gt; PackageId
</span><a href="Distribution.Types.PackageId.html#PackageIdentifier"><span class="hs-identifier hs-var">PackageIdentifier</span></a></span><span> </span><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704764"><span class="hs-identifier hs-var">pn</span></a></span><span> </span><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704775"><span class="hs-identifier hs-var">_basicVersion</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-127"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">LibraryName -&gt; LibraryName -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#combineLibraryName"><span class="hs-identifier hs-var">combineLibraryName</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704762"><span class="hs-identifier hs-var">ln</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704773"><span class="hs-identifier hs-var">_basicLibName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-128"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String -&gt; ComponentId
</span><a href="Distribution.Types.ComponentId.html#mkComponentId"><span class="hs-identifier hs-var">mkComponentId</span></a></span><span> </span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;&quot;</span></span><span class="hs-special">)</span><span> </span><span class="hs-comment">-- installedComponentId_, not in use</span><span>
</span><span id="line-129"></span><span>        </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704772"><span class="hs-identifier hs-var">_basicLibVisibility</span></a></span><span>
</span><span id="line-130"></span><span>      </span><span class="hs-keyword">where</span><span>
</span><span id="line-131"></span><span>        </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span> </span><span id="local-6989586621679704764"><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704764"><span class="hs-identifier hs-var">pn</span></a></span></span><span> </span><span id="local-6989586621679704762"><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704762"><span class="hs-identifier hs-var">ln</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704776"><span class="hs-identifier hs-var">_basicName</span></a></span><span>
</span><span id="line-132"></span><span class="hs-pragma">{-# SPECIALIZE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-pragma hs-type">ipiFieldGrammar</span></a></span><span> </span><span class="hs-pragma">::</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.FieldDescrs.html#FieldDescrs"><span class="hs-pragma hs-type">FieldDescrs</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-133"></span><span class="hs-pragma">{-# SPECIALIZE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-pragma hs-type">ipiFieldGrammar</span></a></span><span> </span><span class="hs-pragma">::</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Parsec.html#ParsecFieldGrammar"><span class="hs-pragma hs-type">ParsecFieldGrammar</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-134"></span><span class="hs-pragma">{-# SPECIALIZE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ipiFieldGrammar"><span class="hs-pragma hs-type">ipiFieldGrammar</span></a></span><span> </span><span class="hs-pragma">::</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Pretty.html#PrettyFieldGrammar"><span class="hs-pragma hs-type">PrettyFieldGrammar</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-pragma hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-135"></span><span>
</span><span id="line-136"></span><span class="hs-comment">-- (forall b. [b]) ~ ()</span><span>
</span><span id="line-137"></span><span id="local-6989586621679705454"><span id="local-6989586621679705455"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#unitedList"><span class="hs-identifier hs-type">unitedList</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705455"><span class="hs-identifier hs-type">a</span></a></span><span> </span><span class="hs-special">[</span><span class="annot"><a href="#local-6989586621679705454"><span class="hs-identifier hs-type">b</span></a></span><span class="hs-special">]</span></span></span><span>
</span><span id="line-138"></span><span id="unitedList"><span class="annot"><span class="annottext">unitedList :: forall a b. Lens' a [b]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#unitedList"><span class="hs-identifier hs-var hs-var">unitedList</span></a></span></span><span> </span><span id="local-6989586621679704757"><span class="annot"><span class="annottext">[b] -&gt; f [b]
</span><a href="#local-6989586621679704757"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704756"><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621679704756"><span class="hs-identifier hs-var">s</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">a
</span><a href="#local-6989586621679704756"><span class="hs-identifier hs-var">s</span></a></span><span> </span><span class="annot"><span class="annottext">a -&gt; f [b] -&gt; f a
forall (f :: * -&gt; *) a b. Functor f =&gt; a -&gt; f b -&gt; f a
</span><a href="../../base/src/GHC.Base.html#%3C%24"><span class="hs-operator hs-var">&lt;$</span></a></span><span> </span><span class="annot"><span class="annottext">[b] -&gt; f [b]
</span><a href="#local-6989586621679704757"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">[</span><span class="hs-special">]</span><span>
</span><span id="line-139"></span><span>
</span><span id="line-140"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-141"></span><span class="hs-comment">-- Helper functions</span><span>
</span><span id="line-142"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-143"></span><span>
</span><span id="line-144"></span><span class="hs-comment">-- | Combine 'LibraryName'. in parsing we prefer value coming</span><span>
</span><span id="line-145"></span><span class="hs-comment">-- from munged @name@ field over the @lib-name@.</span><span>
</span><span id="line-146"></span><span class="hs-comment">--</span><span>
</span><span id="line-147"></span><span class="hs-comment">-- /Should/ be irrelevant.</span><span>
</span><span id="line-148"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#combineLibraryName"><span class="hs-identifier hs-type">combineLibraryName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryName.html#LibraryName"><span class="hs-identifier hs-type">LibraryName</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryName.html#LibraryName"><span class="hs-identifier hs-type">LibraryName</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryName.html#LibraryName"><span class="hs-identifier hs-type">LibraryName</span></a></span><span>
</span><span id="line-149"></span><span id="combineLibraryName"><span class="annot"><span class="annottext">combineLibraryName :: LibraryName -&gt; LibraryName -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#combineLibraryName"><span class="hs-identifier hs-var hs-var">combineLibraryName</span></a></span></span><span> </span><span id="local-6989586621679704754"><span class="annot"><span class="annottext">l :: LibraryName
</span><a href="#local-6989586621679704754"><span class="hs-identifier hs-var">l</span></a></span></span><span class="hs-glyph">@</span><span class="hs-special">(</span><span class="annot"><a href="Distribution.Types.LibraryName.html#LSubLibName"><span class="hs-identifier hs-type">LSubLibName</span></a></span><span> </span><span class="annot"><span class="annottext">UnqualComponentName
</span><span class="hs-identifier">_</span></span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><span class="hs-identifier">_</span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704754"><span class="hs-identifier hs-var">l</span></a></span><span>
</span><span id="line-150"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#combineLibraryName"><span class="hs-identifier hs-var">combineLibraryName</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><span class="hs-identifier">_</span></span><span> </span><span id="local-6989586621679704752"><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704752"><span class="hs-identifier hs-var">l</span></a></span></span><span>                 </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704752"><span class="hs-identifier hs-var">l</span></a></span><span>
</span><span id="line-151"></span><span>
</span><span id="line-152"></span><span class="hs-comment">-- To maintain backwards-compatibility, we accept both comma/non-comma</span><span>
</span><span id="line-153"></span><span class="hs-comment">-- separated variants of this field.  You SHOULD use the comma syntax if you</span><span>
</span><span id="line-154"></span><span class="hs-comment">-- use any new functions, although actually it's unambiguous due to a quirk</span><span>
</span><span id="line-155"></span><span class="hs-comment">-- of the fact that modules must start with capital letters.</span><span>
</span><span id="line-156"></span><span>
</span><span id="line-157"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#showExposedModules"><span class="hs-identifier hs-type">showExposedModules</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="hs-special">[</span><span class="annot"><a href="Distribution.Types.ExposedModule.html#ExposedModule"><span class="hs-identifier hs-type">ExposedModule</span></a></span><span class="hs-special">]</span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#Doc"><span class="hs-identifier hs-type">Disp.Doc</span></a></span><span>
</span><span id="line-158"></span><span id="showExposedModules"><span class="annot"><span class="annottext">showExposedModules :: [ExposedModule] -&gt; Doc
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#showExposedModules"><span class="hs-identifier hs-var hs-var">showExposedModules</span></a></span></span><span> </span><span id="local-6989586621679704750"><span class="annot"><span class="annottext">[ExposedModule]
</span><a href="#local-6989586621679704750"><span class="hs-identifier hs-var">xs</span></a></span></span><span>
</span><span id="line-159"></span><span>    </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">(ExposedModule -&gt; Bool) -&gt; [ExposedModule] -&gt; Bool
forall (t :: * -&gt; *) a. Foldable t =&gt; (a -&gt; Bool) -&gt; t a -&gt; Bool
</span><a href="../../base/src/Data.Foldable.html#all"><span class="hs-identifier hs-var">all</span></a></span><span> </span><span class="annot"><span class="annottext">ExposedModule -&gt; Bool
</span><a href="#local-6989586621679704748"><span class="hs-identifier hs-var">isExposedModule</span></a></span><span> </span><span class="annot"><span class="annottext">[ExposedModule]
</span><a href="#local-6989586621679704750"><span class="hs-identifier hs-var">xs</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[Doc] -&gt; Doc
</span><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#fsep"><span class="hs-identifier hs-var">Disp.fsep</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(ExposedModule -&gt; Doc) -&gt; [ExposedModule] -&gt; [Doc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">ExposedModule -&gt; Doc
forall a. Pretty a =&gt; a -&gt; Doc
</span><a href="Distribution.Pretty.html#pretty"><span class="hs-identifier hs-var">pretty</span></a></span><span> </span><span class="annot"><span class="annottext">[ExposedModule]
</span><a href="#local-6989586621679704750"><span class="hs-identifier hs-var">xs</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-160"></span><span>    </span><span class="hs-glyph">|</span><span> </span><span class="annot"><span class="annottext">Bool
</span><a href="../../base/src/GHC.Base.html#otherwise"><span class="hs-identifier hs-var">otherwise</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[Doc] -&gt; Doc
</span><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#fsep"><span class="hs-identifier hs-var">Disp.fsep</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Doc -&gt; [Doc] -&gt; [Doc]
</span><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#punctuate"><span class="hs-identifier hs-var">Disp.punctuate</span></a></span><span> </span><span class="annot"><span class="annottext">Doc
</span><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#comma"><span class="hs-identifier hs-var">Disp.comma</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">(ExposedModule -&gt; Doc) -&gt; [ExposedModule] -&gt; [Doc]
forall a b. (a -&gt; b) -&gt; [a] -&gt; [b]
</span><a href="../../base/src/GHC.Base.html#map"><span class="hs-identifier hs-var">map</span></a></span><span> </span><span class="annot"><span class="annottext">ExposedModule -&gt; Doc
forall a. Pretty a =&gt; a -&gt; Doc
</span><a href="Distribution.Pretty.html#pretty"><span class="hs-identifier hs-var">pretty</span></a></span><span> </span><span class="annot"><span class="annottext">[ExposedModule]
</span><a href="#local-6989586621679704750"><span class="hs-identifier hs-var">xs</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-161"></span><span>    </span><span class="hs-keyword">where</span><span> </span><span id="local-6989586621679704748"><span class="annot"><span class="annottext">isExposedModule :: ExposedModule -&gt; Bool
</span><a href="#local-6989586621679704748"><span class="hs-identifier hs-var hs-var">isExposedModule</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.Types.ExposedModule.html#ExposedModule"><span class="hs-identifier hs-type">ExposedModule</span></a></span><span> </span><span class="annot"><span class="annottext">ModuleName
</span><span class="hs-identifier">_</span></span><span> </span><span class="annot"><span class="annottext">Maybe OpenModule
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">True</span></span><span>
</span><span id="line-162"></span><span>          </span><span class="annot"><a href="#local-6989586621679704748"><span class="hs-identifier hs-var">isExposedModule</span></a></span><span> </span><span class="annot"><span class="annottext">ExposedModule
</span><span class="hs-identifier">_</span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Bool
</span><span class="hs-identifier hs-var">False</span></span><span>
</span><span id="line-163"></span><span>
</span><span id="line-164"></span><span class="hs-comment">-- | Setter for the @package-name@ field.  It should be acceptable for this</span><span>
</span><span id="line-165"></span><span class="hs-comment">-- to be a no-op.</span><span>
</span><span id="line-166"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMaybePackageName"><span class="hs-identifier hs-type">setMaybePackageName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span>
</span><span id="line-167"></span><span id="setMaybePackageName"><span class="annot"><span class="annottext">setMaybePackageName :: Maybe PackageName -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMaybePackageName"><span class="hs-identifier hs-var hs-var">setMaybePackageName</span></a></span></span><span> </span><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span>   </span><span id="local-6989586621679704741"><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704741"><span class="hs-identifier hs-var">ipi</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704741"><span class="hs-identifier hs-var">ipi</span></a></span><span>
</span><span id="line-168"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMaybePackageName"><span class="hs-identifier hs-var">setMaybePackageName</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-type">Just</span></a></span><span> </span><span id="local-6989586621679704740"><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704740"><span class="hs-identifier hs-var">pn</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621679704739"><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704739"><span class="hs-identifier hs-var">ipi</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704739"><span class="hs-identifier hs-var">ipi</span></a></span><span>
</span><span id="line-169"></span><span>    </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">sourcePackageId :: PackageId
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourcePackageId"><span class="hs-identifier hs-var">sourcePackageId</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; PackageId
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourcePackageId"><span class="hs-identifier hs-var hs-var">sourcePackageId</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704739"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-special">{</span><span class="annot"><span class="annottext">pkgName :: PackageName
</span><a href="Distribution.Types.PackageId.html#pkgName"><span class="hs-identifier hs-var">pkgName</span></a></span><span class="hs-glyph">=</span><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704740"><span class="hs-identifier hs-var">pn</span></a></span><span class="hs-special">}</span><span>
</span><span id="line-170"></span><span>    </span><span class="hs-special">}</span><span>
</span><span id="line-171"></span><span>
</span><span id="line-172"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMungedPackageName"><span class="hs-identifier hs-type">setMungedPackageName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span>
</span><span id="line-173"></span><span id="setMungedPackageName"><span class="annot"><span class="annottext">setMungedPackageName :: MungedPackageName -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMungedPackageName"><span class="hs-identifier hs-var hs-var">setMungedPackageName</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span> </span><span id="local-6989586621679704735"><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704735"><span class="hs-identifier hs-var">pn</span></a></span></span><span> </span><span id="local-6989586621679704734"><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704734"><span class="hs-identifier hs-var">ln</span></a></span></span><span class="hs-special">)</span><span> </span><span id="local-6989586621679704733"><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704733"><span class="hs-identifier hs-var">ipi</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704733"><span class="hs-identifier hs-var">ipi</span></a></span><span>
</span><span id="line-174"></span><span>    </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">sourcePackageId :: PackageId
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourcePackageId"><span class="hs-identifier hs-var">sourcePackageId</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; PackageId
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourcePackageId"><span class="hs-identifier hs-var hs-var">sourcePackageId</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704733"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span> </span><span class="hs-special">{</span><span class="annot"><span class="annottext">pkgName :: PackageName
</span><a href="Distribution.Types.PackageId.html#pkgName"><span class="hs-identifier hs-var">pkgName</span></a></span><span class="hs-glyph">=</span><span class="annot"><span class="annottext">PackageName
</span><a href="#local-6989586621679704735"><span class="hs-identifier hs-var">pn</span></a></span><span class="hs-special">}</span><span>
</span><span id="line-175"></span><span>    </span><span class="hs-special">,</span><span> </span><span class="annot"><span class="annottext">sourceLibName :: LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourceLibName"><span class="hs-identifier hs-var">sourceLibName</span></a></span><span>   </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704734"><span class="hs-identifier hs-var">ln</span></a></span><span>
</span><span id="line-176"></span><span>    </span><span class="hs-special">}</span><span>
</span><span id="line-177"></span><span>
</span><span id="line-178"></span><span class="hs-comment">--- | Returns @Just@ if the @name@ field of the IPI record would not contain</span><span>
</span><span id="line-179"></span><span class="hs-comment">--- the package name verbatim.  This helps us avoid writing @package-name@</span><span>
</span><span id="line-180"></span><span class="hs-comment">--- when it's redundant.</span><span>
</span><span id="line-181"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#maybePackageName"><span class="hs-identifier hs-type">maybePackageName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span>
</span><span id="line-182"></span><span id="maybePackageName"><span class="annot"><span class="annottext">maybePackageName :: InstalledPackageInfo -&gt; Maybe PackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#maybePackageName"><span class="hs-identifier hs-var hs-var">maybePackageName</span></a></span></span><span> </span><span id="local-6989586621679704730"><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704730"><span class="hs-identifier hs-var">ipi</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">case</span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourceLibName"><span class="hs-identifier hs-var hs-var">sourceLibName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704730"><span class="hs-identifier hs-var">ipi</span></a></span><span> </span><span class="hs-keyword">of</span><span>
</span><span id="line-183"></span><span>    </span><span class="annot"><span class="annottext">LibraryName
</span><a href="Distribution.Types.LibraryName.html#LMainLibName"><span class="hs-identifier hs-var">LMainLibName</span></a></span><span>  </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Maybe PackageName
forall a. Maybe a
</span><a href="../../base/src/GHC.Maybe.html#Nothing"><span class="hs-identifier hs-var">Nothing</span></a></span><span>
</span><span id="line-184"></span><span>    </span><span class="annot"><a href="Distribution.Types.LibraryName.html#LSubLibName"><span class="hs-identifier hs-type">LSubLibName</span></a></span><span> </span><span class="annot"><span class="annottext">UnqualComponentName
</span><span class="hs-identifier">_</span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">PackageName -&gt; Maybe PackageName
forall a. a -&gt; Maybe a
</span><a href="../../base/src/GHC.Maybe.html#Just"><span class="hs-identifier hs-var">Just</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; PackageName
forall pkg. Package pkg =&gt; pkg -&gt; PackageName
</span><a href="Distribution.Package.html#packageName"><span class="hs-identifier hs-var">packageName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704730"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-185"></span><span>
</span><span id="line-186"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-187"></span><span class="hs-comment">-- Auxiliary types</span><span>
</span><span id="line-188"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-189"></span><span>
</span><span id="line-190"></span><span class="hs-keyword">newtype</span><span> </span><span id="ExposedModules"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-var">ExposedModules</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="ExposedModules"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-var">ExposedModules</span></a></span></span><span> </span><span class="hs-special">{</span><span> </span><span id="getExposedModules"><span class="annot"><span class="annottext">ExposedModules -&gt; [ExposedModule]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getExposedModules"><span class="hs-identifier hs-var hs-var">getExposedModules</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="hs-special">[</span><span class="annot"><a href="Distribution.Types.ExposedModule.html#ExposedModule"><span class="hs-identifier hs-type">ExposedModule</span></a></span><span class="hs-special">]</span><span> </span><span class="hs-special">}</span><span>
</span><span id="line-191"></span><span>
</span><span id="line-192"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704723"><span id="local-6989586621679704725"><span class="annot"><a href="Distribution.Compat.Newtype.html#Newtype"><span class="hs-identifier hs-type">Newtype</span></a></span><span> </span><span class="hs-special">[</span><span class="annot"><a href="Distribution.Types.ExposedModule.html#ExposedModule"><span class="hs-identifier hs-type">ExposedModule</span></a></span><span class="hs-special">]</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-type">ExposedModules</span></a></span></span></span><span>
</span><span id="line-193"></span><span>
</span><span id="line-194"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="Distribution.Parsec.html#Parsec"><span class="hs-identifier hs-type">Parsec</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-type">ExposedModules</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-195"></span><span>    </span><span id="local-6989586621679704704"><span class="annot"><span class="annottext">parsec :: forall (m :: * -&gt; *). CabalParsing m =&gt; m ExposedModules
</span><a href="Distribution.Parsec.html#parsec"><span class="hs-identifier hs-var hs-var hs-var hs-var">parsec</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[ExposedModule] -&gt; ExposedModules
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-var">ExposedModules</span></a></span><span> </span><span class="annot"><span class="annottext">([ExposedModule] -&gt; ExposedModules)
-&gt; m [ExposedModule] -&gt; m ExposedModules
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">m ExposedModule -&gt; m [ExposedModule]
forall (m :: * -&gt; *) a. CabalParsing m =&gt; m a -&gt; m [a]
</span><a href="Distribution.Parsec.html#parsecOptCommaList"><span class="hs-identifier hs-var">parsecOptCommaList</span></a></span><span> </span><span class="annot"><span class="annottext">m ExposedModule
forall a (m :: * -&gt; *). (Parsec a, CabalParsing m) =&gt; m a
</span><a href="Distribution.Parsec.html#parsec"><span class="hs-identifier hs-var">parsec</span></a></span><span>
</span><span id="line-196"></span><span>
</span><span id="line-197"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704699"><span class="annot"><a href="Distribution.Pretty.html#Pretty"><span class="hs-identifier hs-type">Pretty</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#ExposedModules"><span class="hs-identifier hs-type">ExposedModules</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-198"></span><span>    </span><span id="local-6989586621679704697"><span class="annot"><span class="annottext">pretty :: ExposedModules -&gt; Doc
</span><a href="#local-6989586621679704697"><span class="hs-identifier hs-var hs-var hs-var hs-var">pretty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[ExposedModule] -&gt; Doc
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#showExposedModules"><span class="hs-identifier hs-var">showExposedModules</span></a></span><span> </span><span class="annot"><span class="annottext">([ExposedModule] -&gt; Doc)
-&gt; (ExposedModules -&gt; [ExposedModule]) -&gt; ExposedModules -&gt; Doc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">ExposedModules -&gt; [ExposedModule]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getExposedModules"><span class="hs-identifier hs-var hs-var">getExposedModules</span></a></span><span>
</span><span id="line-199"></span><span>
</span><span id="line-200"></span><span class="hs-keyword">newtype</span><span> </span><span id="CompatPackageKey"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-var">CompatPackageKey</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="CompatPackageKey"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-var">CompatPackageKey</span></a></span></span><span> </span><span class="hs-special">{</span><span> </span><span id="getCompatPackageKey"><span class="annot"><span class="annottext">CompatPackageKey -&gt; String
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getCompatPackageKey"><span class="hs-identifier hs-var hs-var">getCompatPackageKey</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#String"><span class="hs-identifier hs-type">String</span></a></span><span> </span><span class="hs-special">}</span><span>
</span><span id="line-201"></span><span>
</span><span id="line-202"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704691"><span id="local-6989586621679704693"><span class="annot"><a href="Distribution.Compat.Newtype.html#Newtype"><span class="hs-identifier hs-type">Newtype</span></a></span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#String"><span class="hs-identifier hs-type">String</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-type">CompatPackageKey</span></a></span></span></span><span>
</span><span id="line-203"></span><span>
</span><span id="line-204"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704688"><span class="annot"><a href="Distribution.Pretty.html#Pretty"><span class="hs-identifier hs-type">Pretty</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-type">CompatPackageKey</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-205"></span><span>    </span><span id="local-6989586621679704687"><span class="annot"><span class="annottext">pretty :: CompatPackageKey -&gt; Doc
</span><a href="#local-6989586621679704687"><span class="hs-identifier hs-var hs-var hs-var hs-var">pretty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; Doc
</span><a href="../../pretty/src/Text.PrettyPrint.HughesPJ.html#text"><span class="hs-identifier hs-var">Disp.text</span></a></span><span> </span><span class="annot"><span class="annottext">(String -&gt; Doc)
-&gt; (CompatPackageKey -&gt; String) -&gt; CompatPackageKey -&gt; Doc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">CompatPackageKey -&gt; String
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getCompatPackageKey"><span class="hs-identifier hs-var hs-var">getCompatPackageKey</span></a></span><span>
</span><span id="line-206"></span><span>
</span><span id="line-207"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="Distribution.Parsec.html#Parsec"><span class="hs-identifier hs-type">Parsec</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-type">CompatPackageKey</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-208"></span><span>    </span><span id="local-6989586621679704676"><span class="annot"><span class="annottext">parsec :: forall (m :: * -&gt; *). CabalParsing m =&gt; m CompatPackageKey
</span><a href="#local-6989586621679704676"><span class="hs-identifier hs-var hs-var hs-var hs-var">parsec</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">String -&gt; CompatPackageKey
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#CompatPackageKey"><span class="hs-identifier hs-var">CompatPackageKey</span></a></span><span> </span><span class="annot"><span class="annottext">(String -&gt; CompatPackageKey) -&gt; m String -&gt; m CompatPackageKey
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">(Char -&gt; Bool) -&gt; m String
forall (m :: * -&gt; *). CharParsing m =&gt; (Char -&gt; Bool) -&gt; m String
</span><a href="Distribution.Compat.CharParsing.html#munch1"><span class="hs-identifier hs-var">P.munch1</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; Bool
</span><a href="#local-6989586621679704674"><span class="hs-identifier hs-var">uid_char</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-209"></span><span>        </span><span id="local-6989586621679704674"><span class="annot"><span class="annottext">uid_char :: Char -&gt; Bool
</span><a href="#local-6989586621679704674"><span class="hs-identifier hs-var hs-var">uid_char</span></a></span></span><span> </span><span id="local-6989586621679704671"><span class="annot"><span class="annottext">Char
</span><a href="#local-6989586621679704671"><span class="hs-identifier hs-var">c</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Char -&gt; Bool
</span><a href="../../base/src/GHC.Unicode.html#isAlphaNum"><span class="hs-identifier hs-var">Char.isAlphaNum</span></a></span><span> </span><span class="annot"><span class="annottext">Char
</span><a href="#local-6989586621679704671"><span class="hs-identifier hs-var">c</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">||</span></span><span> </span><span class="annot"><span class="annottext">Char
</span><a href="#local-6989586621679704671"><span class="hs-identifier hs-var">c</span></a></span><span> </span><span class="annot"><span class="annottext">Char -&gt; String -&gt; Bool
forall (t :: * -&gt; *) a. (Foldable t, Eq a) =&gt; a -&gt; t a -&gt; Bool
</span><a href="../../base/src/Data.Foldable.html#elem"><span class="hs-operator hs-var">`elem`</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">String
</span><span class="hs-string">&quot;-_.=[],:&lt;&gt;+&quot;</span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#String"><span class="hs-identifier hs-type">String</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-210"></span><span>
</span><span id="line-211"></span><span class="hs-keyword">newtype</span><span> </span><span id="InstWith"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-var">InstWith</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="InstWith"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-var">InstWith</span></a></span></span><span> </span><span class="hs-special">{</span><span> </span><span id="getInstWith"><span class="annot"><span class="annottext">InstWith -&gt; [(ModuleName, OpenModule)]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getInstWith"><span class="hs-identifier hs-var hs-var">getInstWith</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="hs-special">[</span><span class="hs-special">(</span><span class="annot"><a href="Distribution.ModuleName.html#ModuleName"><span class="hs-identifier hs-type">ModuleName</span></a></span><span class="hs-special">,</span><span class="annot"><a href="Distribution.Backpack.html#OpenModule"><span class="hs-identifier hs-type">OpenModule</span></a></span><span class="hs-special">)</span><span class="hs-special">]</span><span> </span><span class="hs-special">}</span><span>
</span><span id="line-212"></span><span>
</span><span id="line-213"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704663"><span id="local-6989586621679704665"><span class="annot"><a href="Distribution.Compat.Newtype.html#Newtype"><span class="hs-identifier hs-type">Newtype</span></a></span><span>  </span><span class="hs-special">[</span><span class="hs-special">(</span><span class="annot"><a href="Distribution.ModuleName.html#ModuleName"><span class="hs-identifier hs-type">ModuleName</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><a href="Distribution.Backpack.html#OpenModule"><span class="hs-identifier hs-type">OpenModule</span></a></span><span class="hs-special">)</span><span class="hs-special">]</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-type">InstWith</span></a></span></span></span><span>
</span><span id="line-214"></span><span>
</span><span id="line-215"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704660"><span class="annot"><a href="Distribution.Pretty.html#Pretty"><span class="hs-identifier hs-type">Pretty</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-type">InstWith</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-216"></span><span>    </span><span id="local-6989586621679704657"><span class="annot"><span class="annottext">pretty :: InstWith -&gt; Doc
</span><a href="#local-6989586621679704657"><span class="hs-identifier hs-var hs-var hs-var hs-var">pretty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">OpenModuleSubst -&gt; Doc
</span><a href="Distribution.Backpack.html#dispOpenModuleSubst"><span class="hs-identifier hs-var">dispOpenModuleSubst</span></a></span><span> </span><span class="annot"><span class="annottext">(OpenModuleSubst -&gt; Doc)
-&gt; (InstWith -&gt; OpenModuleSubst) -&gt; InstWith -&gt; Doc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">[(ModuleName, OpenModule)] -&gt; OpenModuleSubst
forall k a. Ord k =&gt; [(k, a)] -&gt; Map k a
</span><a href="../../containers/src/Data.Map.Internal.html#fromList"><span class="hs-identifier hs-var">Map.fromList</span></a></span><span> </span><span class="annot"><span class="annottext">([(ModuleName, OpenModule)] -&gt; OpenModuleSubst)
-&gt; (InstWith -&gt; [(ModuleName, OpenModule)])
-&gt; InstWith
-&gt; OpenModuleSubst
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">InstWith -&gt; [(ModuleName, OpenModule)]
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getInstWith"><span class="hs-identifier hs-var hs-var">getInstWith</span></a></span><span>
</span><span id="line-217"></span><span>
</span><span id="line-218"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="Distribution.Parsec.html#Parsec"><span class="hs-identifier hs-type">Parsec</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-type">InstWith</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-219"></span><span>    </span><span id="local-6989586621679704645"><span class="annot"><span class="annottext">parsec :: forall (m :: * -&gt; *). CabalParsing m =&gt; m InstWith
</span><a href="#local-6989586621679704645"><span class="hs-identifier hs-var hs-var hs-var hs-var">parsec</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">[(ModuleName, OpenModule)] -&gt; InstWith
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#InstWith"><span class="hs-identifier hs-var">InstWith</span></a></span><span> </span><span class="annot"><span class="annottext">([(ModuleName, OpenModule)] -&gt; InstWith)
-&gt; (OpenModuleSubst -&gt; [(ModuleName, OpenModule)])
-&gt; OpenModuleSubst
-&gt; InstWith
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">OpenModuleSubst -&gt; [(ModuleName, OpenModule)]
forall k a. Map k a -&gt; [(k, a)]
</span><a href="../../containers/src/Data.Map.Internal.html#toList"><span class="hs-identifier hs-var">Map.toList</span></a></span><span> </span><span class="annot"><span class="annottext">(OpenModuleSubst -&gt; InstWith) -&gt; m OpenModuleSubst -&gt; m InstWith
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">m OpenModuleSubst
forall (m :: * -&gt; *). CabalParsing m =&gt; m OpenModuleSubst
</span><a href="Distribution.Backpack.html#parsecOpenModuleSubst"><span class="hs-identifier hs-var">parsecOpenModuleSubst</span></a></span><span>
</span><span id="line-220"></span><span>
</span><span id="line-221"></span><span class="hs-comment">-- | SPDX License expression or legacy license. Lenient parser, accepts either.</span><span>
</span><span id="line-222"></span><span class="hs-keyword">newtype</span><span> </span><span id="SpecLicenseLenient"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-var">SpecLicenseLenient</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="SpecLicenseLenient"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-var">SpecLicenseLenient</span></a></span></span><span> </span><span class="hs-special">{</span><span> </span><span id="getSpecLicenseLenient"><span class="annot"><span class="annottext">SpecLicenseLenient -&gt; Either License License
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getSpecLicenseLenient"><span class="hs-identifier hs-var hs-var">getSpecLicenseLenient</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/Data.Either.html#Either"><span class="hs-identifier hs-type">Either</span></a></span><span> </span><span class="annot"><a href="Distribution.SPDX.License.html#License"><span class="hs-identifier hs-type">SPDX.License</span></a></span><span> </span><span class="annot"><a href="Distribution.License.html#License"><span class="hs-identifier hs-type">License</span></a></span><span> </span><span class="hs-special">}</span><span>
</span><span id="line-223"></span><span>
</span><span id="line-224"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704638"><span id="local-6989586621679704640"><span class="annot"><a href="Distribution.Compat.Newtype.html#Newtype"><span class="hs-identifier hs-type">Newtype</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Either.html#Either"><span class="hs-identifier hs-type">Either</span></a></span><span> </span><span class="annot"><a href="Distribution.SPDX.License.html#License"><span class="hs-identifier hs-type">SPDX.License</span></a></span><span> </span><span class="annot"><a href="Distribution.License.html#License"><span class="hs-identifier hs-type">License</span></a></span><span class="hs-special">)</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-type">SpecLicenseLenient</span></a></span></span></span><span>
</span><span id="line-225"></span><span>
</span><span id="line-226"></span><span class="hs-keyword">instance</span><span> </span><span class="annot"><a href="Distribution.Parsec.html#Parsec"><span class="hs-identifier hs-type">Parsec</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-type">SpecLicenseLenient</span></a></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-227"></span><span>    </span><span id="local-6989586621679704619"><span class="annot"><span class="annottext">parsec :: forall (m :: * -&gt; *). CabalParsing m =&gt; m SpecLicenseLenient
</span><a href="#local-6989586621679704619"><span class="hs-identifier hs-var hs-var hs-var hs-var">parsec</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(Either License License -&gt; SpecLicenseLenient)
-&gt; m (Either License License) -&gt; m SpecLicenseLenient
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#fmap"><span class="hs-identifier hs-var">fmap</span></a></span><span> </span><span class="annot"><span class="annottext">Either License License -&gt; SpecLicenseLenient
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-var">SpecLicenseLenient</span></a></span><span> </span><span class="annot"><span class="annottext">(m (Either License License) -&gt; m SpecLicenseLenient)
-&gt; m (Either License License) -&gt; m SpecLicenseLenient
forall a b. (a -&gt; b) -&gt; a -&gt; b
</span><a href="../../base/src/GHC.Base.html#%24"><span class="hs-operator hs-var">$</span></a></span><span> </span><span class="annot"><span class="annottext">License -&gt; Either License License
forall a b. a -&gt; Either a b
</span><a href="../../base/src/Data.Either.html#Left"><span class="hs-identifier hs-var">Left</span></a></span><span> </span><span class="annot"><span class="annottext">(License -&gt; Either License License)
-&gt; m License -&gt; m (Either License License)
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">m License -&gt; m License
forall (m :: * -&gt; *) a. Parsing m =&gt; m a -&gt; m a
</span><a href="Distribution.Compat.Parsing.html#try"><span class="hs-identifier hs-var">P.try</span></a></span><span> </span><span class="annot"><span class="annottext">m License
forall a (m :: * -&gt; *). (Parsec a, CabalParsing m) =&gt; m a
</span><a href="Distribution.Parsec.html#parsec"><span class="hs-identifier hs-var">parsec</span></a></span><span> </span><span class="annot"><span class="annottext">m (Either License License)
-&gt; m (Either License License) -&gt; m (Either License License)
forall (f :: * -&gt; *) a. Alternative f =&gt; f a -&gt; f a -&gt; f a
</span><a href="../../base/src/GHC.Base.html#%3C%7C%3E"><span class="hs-operator hs-var">&lt;|&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">License -&gt; Either License License
forall a b. b -&gt; Either a b
</span><a href="../../base/src/Data.Either.html#Right"><span class="hs-identifier hs-var">Right</span></a></span><span> </span><span class="annot"><span class="annottext">(License -&gt; Either License License)
-&gt; m License -&gt; m (Either License License)
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">m License
forall a (m :: * -&gt; *). (Parsec a, CabalParsing m) =&gt; m a
</span><a href="Distribution.Parsec.html#parsec"><span class="hs-identifier hs-var">parsec</span></a></span><span>
</span><span id="line-228"></span><span>
</span><span id="line-229"></span><span class="hs-keyword">instance</span><span> </span><span id="local-6989586621679704614"><span class="annot"><a href="Distribution.Pretty.html#Pretty"><span class="hs-identifier hs-type">Pretty</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#SpecLicenseLenient"><span class="hs-identifier hs-type">SpecLicenseLenient</span></a></span></span><span> </span><span class="hs-keyword">where</span><span>
</span><span id="line-230"></span><span>    </span><span id="local-6989586621679704609"><span class="annot"><span class="annottext">pretty :: SpecLicenseLenient -&gt; Doc
</span><a href="#local-6989586621679704609"><span class="hs-identifier hs-var hs-var hs-var hs-var">pretty</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">(License -&gt; Doc)
-&gt; (License -&gt; Doc) -&gt; Either License License -&gt; Doc
forall a c b. (a -&gt; c) -&gt; (b -&gt; c) -&gt; Either a b -&gt; c
</span><a href="../../base/src/Data.Either.html#either"><span class="hs-identifier hs-var">either</span></a></span><span> </span><span class="annot"><span class="annottext">License -&gt; Doc
forall a. Pretty a =&gt; a -&gt; Doc
</span><a href="Distribution.Pretty.html#pretty"><span class="hs-identifier hs-var">pretty</span></a></span><span> </span><span class="annot"><span class="annottext">License -&gt; Doc
forall a. Pretty a =&gt; a -&gt; Doc
</span><a href="Distribution.Pretty.html#pretty"><span class="hs-identifier hs-var">pretty</span></a></span><span> </span><span class="annot"><span class="annottext">(Either License License -&gt; Doc)
-&gt; (SpecLicenseLenient -&gt; Either License License)
-&gt; SpecLicenseLenient
-&gt; Doc
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">SpecLicenseLenient -&gt; Either License License
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#getSpecLicenseLenient"><span class="hs-identifier hs-var hs-var">getSpecLicenseLenient</span></a></span><span>
</span><span id="line-231"></span><span>
</span><span id="line-232"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-233"></span><span class="hs-comment">-- Basic fields</span><span>
</span><span id="line-234"></span><span class="hs-comment">-------------------------------------------------------------------------------</span><span>
</span><span id="line-235"></span><span>
</span><span id="line-236"></span><span class="hs-comment">-- | This type is used to mangle fields as</span><span>
</span><span id="line-237"></span><span class="hs-comment">-- in serialised textual representation</span><span>
</span><span id="line-238"></span><span class="hs-comment">-- to the actual 'InstalledPackageInfo' fields.</span><span>
</span><span id="line-239"></span><span class="hs-keyword">data</span><span> </span><span id="Basic"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-var">Basic</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span id="Basic"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-var">Basic</span></a></span></span><span>
</span><span id="line-240"></span><span>    </span><span class="hs-special">{</span><span> </span><span id="_basicName"><span class="annot"><span class="annottext">Basic -&gt; MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicName"><span class="hs-identifier hs-var hs-var">_basicName</span></a></span></span><span>          </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span>
</span><span id="line-241"></span><span>    </span><span class="hs-special">,</span><span> </span><span id="_basicVersion"><span class="annot"><span class="annottext">Basic -&gt; Version
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicVersion"><span class="hs-identifier hs-var hs-var">_basicVersion</span></a></span></span><span>       </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.Version.html#Version"><span class="hs-identifier hs-type">Version</span></a></span><span>
</span><span id="line-242"></span><span>    </span><span class="hs-special">,</span><span> </span><span id="_basicPkgName"><span class="annot"><span class="annottext">Basic -&gt; Maybe PackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicPkgName"><span class="hs-identifier hs-var hs-var">_basicPkgName</span></a></span></span><span>       </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span>
</span><span id="line-243"></span><span>    </span><span class="hs-special">,</span><span> </span><span id="_basicLibName"><span class="annot"><span class="annottext">Basic -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibName"><span class="hs-identifier hs-var hs-var">_basicLibName</span></a></span></span><span>       </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryName.html#LibraryName"><span class="hs-identifier hs-type">LibraryName</span></a></span><span>
</span><span id="line-244"></span><span>    </span><span class="hs-special">,</span><span> </span><span id="_basicLibVisibility"><span class="annot"><span class="annottext">Basic -&gt; LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibVisibility"><span class="hs-identifier hs-var hs-var">_basicLibVisibility</span></a></span></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibility"><span class="hs-identifier hs-type">LibraryVisibility</span></a></span><span>
</span><span id="line-245"></span><span>    </span><span class="hs-special">}</span><span>
</span><span id="line-246"></span><span>
</span><span id="line-247"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basic"><span class="hs-identifier hs-type">basic</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.html#InstalledPackageInfo"><span class="hs-identifier hs-type">InstalledPackageInfo</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span>
</span><span id="line-248"></span><span id="basic"><span class="annot"><span class="annottext">basic :: Lens' InstalledPackageInfo Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basic"><span class="hs-identifier hs-var hs-var">basic</span></a></span></span><span> </span><span id="local-6989586621679704605"><span class="annot"><span class="annottext">Basic -&gt; f Basic
</span><a href="#local-6989586621679704605"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704604"><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Basic -&gt; InstalledPackageInfo
</span><a href="#local-6989586621679704603"><span class="hs-identifier hs-var">g</span></a></span><span> </span><span class="annot"><span class="annottext">(Basic -&gt; InstalledPackageInfo)
-&gt; f Basic -&gt; f InstalledPackageInfo
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Basic -&gt; f Basic
</span><a href="#local-6989586621679704605"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704602"><span class="hs-identifier hs-var">b</span></a></span><span>
</span><span id="line-249"></span><span>  </span><span class="hs-keyword">where</span><span>
</span><span id="line-250"></span><span>    </span><span id="local-6989586621679704602"><span class="annot"><span class="annottext">b :: Basic
</span><a href="#local-6989586621679704602"><span class="hs-identifier hs-var hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
-&gt; Version
-&gt; Maybe PackageName
-&gt; LibraryName
-&gt; LibraryVisibility
-&gt; Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-var">Basic</span></a></span><span>
</span><span id="line-251"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.html#mungedPackageName"><span class="hs-identifier hs-var">mungedPackageName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-252"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; Version
forall pkg. Package pkg =&gt; pkg -&gt; Version
</span><a href="Distribution.Package.html#packageVersion"><span class="hs-identifier hs-var">packageVersion</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-253"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; Maybe PackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#maybePackageName"><span class="hs-identifier hs-var">maybePackageName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-254"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.html#sourceLibName"><span class="hs-identifier hs-var hs-var">sourceLibName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-255"></span><span>        </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.html#libVisibility"><span class="hs-identifier hs-var hs-var">libVisibility</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-256"></span><span>
</span><span id="line-257"></span><span>    </span><span id="local-6989586621679704603"><span class="annot"><span class="annottext">g :: Basic -&gt; InstalledPackageInfo
</span><a href="#local-6989586621679704603"><span class="hs-identifier hs-var hs-var">g</span></a></span></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span id="local-6989586621679704592"><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704592"><span class="hs-identifier hs-var">n</span></a></span></span><span> </span><span id="local-6989586621679704591"><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704591"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span id="local-6989586621679704590"><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704590"><span class="hs-identifier hs-var">pn</span></a></span></span><span> </span><span id="local-6989586621679704589"><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704589"><span class="hs-identifier hs-var">ln</span></a></span></span><span> </span><span id="local-6989586621679704588"><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704588"><span class="hs-identifier hs-var">lv</span></a></span></span><span class="hs-special">)</span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="#local-6989586621679704604"><span class="hs-identifier hs-var">ipi</span></a></span><span>
</span><span id="line-258"></span><span>        </span><span class="annot"><span class="annottext">InstalledPackageInfo
-&gt; (InstalledPackageInfo -&gt; InstalledPackageInfo)
-&gt; InstalledPackageInfo
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator hs-var">&amp;</span></a></span><span> </span><span class="annot"><span class="annottext">MungedPackageName -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMungedPackageName"><span class="hs-identifier hs-var">setMungedPackageName</span></a></span><span> </span><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704592"><span class="hs-identifier hs-var">n</span></a></span><span>
</span><span id="line-259"></span><span>        </span><span class="annot"><span class="annottext">InstalledPackageInfo
-&gt; (InstalledPackageInfo -&gt; InstalledPackageInfo)
-&gt; InstalledPackageInfo
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator hs-var">&amp;</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  PackageId
  PackageId
Lens' InstalledPackageInfo PackageId
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#sourcePackageId"><span class="hs-identifier hs-var">L.sourcePackageId</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  PackageId
  PackageId
-&gt; ((Version -&gt; Identity Version)
    -&gt; PackageId -&gt; Identity PackageId)
-&gt; (Version -&gt; Identity Version)
-&gt; InstalledPackageInfo
-&gt; Identity InstalledPackageInfo
forall b c a. (b -&gt; c) -&gt; (a -&gt; b) -&gt; a -&gt; c
</span><a href="../../base/src/GHC.Base.html#."><span class="hs-operator hs-var">.</span></a></span><span> </span><span class="annot"><span class="annottext">(Version -&gt; Identity Version) -&gt; PackageId -&gt; Identity PackageId
Lens' PackageId Version
</span><a href="Distribution.Types.PackageId.Lens.html#pkgVersion"><span class="hs-identifier hs-var">L.pkgVersion</span></a></span><span> </span><span class="annot"><span class="annottext">((Version -&gt; Identity Version)
 -&gt; InstalledPackageInfo -&gt; Identity InstalledPackageInfo)
-&gt; Version -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
forall s t a b. ASetter s t a b -&gt; b -&gt; s -&gt; t
</span><a href="Distribution.Compat.Lens.html#.~"><span class="hs-operator hs-var">.~</span></a></span><span> </span><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704591"><span class="hs-identifier hs-var">v</span></a></span><span>
</span><span id="line-260"></span><span>        </span><span class="annot"><span class="annottext">InstalledPackageInfo
-&gt; (InstalledPackageInfo -&gt; InstalledPackageInfo)
-&gt; InstalledPackageInfo
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator hs-var">&amp;</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe PackageName -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#setMaybePackageName"><span class="hs-identifier hs-var">setMaybePackageName</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704590"><span class="hs-identifier hs-var">pn</span></a></span><span>
</span><span id="line-261"></span><span>        </span><span class="annot"><span class="annottext">InstalledPackageInfo
-&gt; (InstalledPackageInfo -&gt; InstalledPackageInfo)
-&gt; InstalledPackageInfo
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator hs-var">&amp;</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  LibraryName
  LibraryName
Lens' InstalledPackageInfo LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#sourceLibName"><span class="hs-identifier hs-var">L.sourceLibName</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  LibraryName
  LibraryName
-&gt; LibraryName -&gt; InstalledPackageInfo -&gt; InstalledPackageInfo
forall s t a b. ASetter s t a b -&gt; b -&gt; s -&gt; t
</span><a href="Distribution.Compat.Lens.html#.~"><span class="hs-operator hs-var">.~</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704589"><span class="hs-identifier hs-var">ln</span></a></span><span>
</span><span id="line-262"></span><span>        </span><span class="annot"><span class="annottext">InstalledPackageInfo
-&gt; (InstalledPackageInfo -&gt; InstalledPackageInfo)
-&gt; InstalledPackageInfo
forall a b. a -&gt; (a -&gt; b) -&gt; b
</span><a href="Distribution.Compat.Lens.html#%26"><span class="hs-operator hs-var">&amp;</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  LibraryVisibility
  LibraryVisibility
Lens' InstalledPackageInfo LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.Lens.html#libVisibility"><span class="hs-identifier hs-var">L.libVisibility</span></a></span><span> </span><span class="annot"><span class="annottext">LensLike
  Identity
  InstalledPackageInfo
  InstalledPackageInfo
  LibraryVisibility
  LibraryVisibility
-&gt; LibraryVisibility
-&gt; InstalledPackageInfo
-&gt; InstalledPackageInfo
forall s t a b. ASetter s t a b -&gt; b -&gt; s -&gt; t
</span><a href="Distribution.Compat.Lens.html#.~"><span class="hs-operator hs-var">.~</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704588"><span class="hs-identifier hs-var">lv</span></a></span><span>
</span><span id="line-263"></span><span>
</span><span id="line-264"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicName"><span class="hs-identifier hs-type">basicName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span>
</span><span id="line-265"></span><span id="basicName"><span class="annot"><span class="annottext">basicName :: Lens' Basic MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicName"><span class="hs-identifier hs-var hs-var">basicName</span></a></span></span><span> </span><span id="local-6989586621679704580"><span class="annot"><span class="annottext">MungedPackageName -&gt; f MungedPackageName
</span><a href="#local-6989586621679704580"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704579"><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704579"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621679704578"><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704578"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704579"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">_basicName :: MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicName"><span class="hs-identifier hs-var">_basicName</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704578"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">(MungedPackageName -&gt; Basic) -&gt; f MungedPackageName -&gt; f Basic
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">MungedPackageName -&gt; f MungedPackageName
</span><a href="#local-6989586621679704580"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Basic -&gt; MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicName"><span class="hs-identifier hs-var hs-var">_basicName</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704579"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-266"></span><span class="hs-pragma">{-# INLINE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicName"><span class="hs-pragma hs-type">basicName</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-267"></span><span>
</span><span id="line-268"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicVersion"><span class="hs-identifier hs-type">basicVersion</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.Version.html#Version"><span class="hs-identifier hs-type">Version</span></a></span><span>
</span><span id="line-269"></span><span id="basicVersion"><span class="annot"><span class="annottext">basicVersion :: Lens' Basic Version
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicVersion"><span class="hs-identifier hs-var hs-var">basicVersion</span></a></span></span><span> </span><span id="local-6989586621679704574"><span class="annot"><span class="annottext">Version -&gt; f Version
</span><a href="#local-6989586621679704574"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704573"><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704573"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621679704572"><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704572"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704573"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">_basicVersion :: Version
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicVersion"><span class="hs-identifier hs-var">_basicVersion</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704572"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">(Version -&gt; Basic) -&gt; f Version -&gt; f Basic
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Version -&gt; f Version
</span><a href="#local-6989586621679704574"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Basic -&gt; Version
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicVersion"><span class="hs-identifier hs-var hs-var">_basicVersion</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704573"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-270"></span><span class="hs-pragma">{-# INLINE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicVersion"><span class="hs-pragma hs-type">basicVersion</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-271"></span><span>
</span><span id="line-272"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicPkgName"><span class="hs-identifier hs-type">basicPkgName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-273"></span><span id="basicPkgName"><span class="annot"><span class="annottext">basicPkgName :: Lens' Basic (Maybe PackageName)
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicPkgName"><span class="hs-identifier hs-var hs-var">basicPkgName</span></a></span></span><span> </span><span id="local-6989586621679704568"><span class="annot"><span class="annottext">Maybe PackageName -&gt; f (Maybe PackageName)
</span><a href="#local-6989586621679704568"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704567"><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704567"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621679704566"><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704566"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704567"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">_basicPkgName :: Maybe PackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicPkgName"><span class="hs-identifier hs-var">_basicPkgName</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704566"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">(Maybe PackageName -&gt; Basic) -&gt; f (Maybe PackageName) -&gt; f Basic
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe PackageName -&gt; f (Maybe PackageName)
</span><a href="#local-6989586621679704568"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Basic -&gt; Maybe PackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicPkgName"><span class="hs-identifier hs-var hs-var">_basicPkgName</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704567"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-274"></span><span class="hs-pragma">{-# INLINE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicPkgName"><span class="hs-pragma hs-type">basicPkgName</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-275"></span><span>
</span><span id="line-276"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibName"><span class="hs-identifier hs-type">basicLibName</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/GHC.Maybe.html#Maybe"><span class="hs-identifier hs-type">Maybe</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.UnqualComponentName.html#UnqualComponentName"><span class="hs-identifier hs-type">UnqualComponentName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-277"></span><span id="basicLibName"><span class="annot"><span class="annottext">basicLibName :: Lens' Basic (Maybe UnqualComponentName)
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibName"><span class="hs-identifier hs-var hs-var">basicLibName</span></a></span></span><span> </span><span id="local-6989586621679704562"><span class="annot"><span class="annottext">Maybe UnqualComponentName -&gt; f (Maybe UnqualComponentName)
</span><a href="#local-6989586621679704562"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704561"><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704561"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621679704560"><span class="annot"><span class="annottext">Maybe UnqualComponentName
</span><a href="#local-6989586621679704560"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704561"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">_basicLibName :: LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibName"><span class="hs-identifier hs-var">_basicLibName</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">Maybe UnqualComponentName -&gt; LibraryName
</span><a href="Distribution.Types.LibraryName.html#maybeToLibraryName"><span class="hs-identifier hs-var">maybeToLibraryName</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe UnqualComponentName
</span><a href="#local-6989586621679704560"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">(Maybe UnqualComponentName -&gt; Basic)
-&gt; f (Maybe UnqualComponentName) -&gt; f Basic
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span>
</span><span id="line-278"></span><span>    </span><span class="annot"><span class="annottext">Maybe UnqualComponentName -&gt; f (Maybe UnqualComponentName)
</span><a href="#local-6989586621679704562"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">LibraryName -&gt; Maybe UnqualComponentName
</span><a href="Distribution.Types.LibraryName.html#libraryNameString"><span class="hs-identifier hs-var">libraryNameString</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Basic -&gt; LibraryName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibName"><span class="hs-identifier hs-var hs-var">_basicLibName</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704561"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span class="hs-special">)</span><span>
</span><span id="line-279"></span><span class="hs-pragma">{-# INLINE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibName"><span class="hs-pragma hs-type">basicLibName</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-280"></span><span>
</span><span id="line-281"></span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibVisibility"><span class="hs-identifier hs-type">basicLibVisibility</span></a></span><span> </span><span class="hs-glyph">::</span><span> </span><span class="annot"><a href="Distribution.Compat.Lens.html#Lens%27"><span class="hs-identifier hs-type">Lens'</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibility"><span class="hs-identifier hs-type">LibraryVisibility</span></a></span><span>
</span><span id="line-282"></span><span id="basicLibVisibility"><span class="annot"><span class="annottext">basicLibVisibility :: Lens' Basic LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibVisibility"><span class="hs-identifier hs-var hs-var">basicLibVisibility</span></a></span></span><span> </span><span id="local-6989586621679704554"><span class="annot"><span class="annottext">LibraryVisibility -&gt; f LibraryVisibility
</span><a href="#local-6989586621679704554"><span class="hs-identifier hs-var">f</span></a></span></span><span> </span><span id="local-6989586621679704553"><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704553"><span class="hs-identifier hs-var">b</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-special">(</span><span class="hs-glyph">\</span><span id="local-6989586621679704552"><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704552"><span class="hs-identifier hs-var">x</span></a></span></span><span> </span><span class="hs-glyph">-&gt;</span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704553"><span class="hs-identifier hs-var">b</span></a></span><span> </span><span class="hs-special">{</span><span> </span><span class="annot"><span class="annottext">_basicLibVisibility :: LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibVisibility"><span class="hs-identifier hs-var">_basicLibVisibility</span></a></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704552"><span class="hs-identifier hs-var">x</span></a></span><span> </span><span class="hs-special">}</span><span class="hs-special">)</span><span> </span><span class="annot"><span class="annottext">(LibraryVisibility -&gt; Basic) -&gt; f LibraryVisibility -&gt; f Basic
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span>
</span><span id="line-283"></span><span>    </span><span class="annot"><span class="annottext">LibraryVisibility -&gt; f LibraryVisibility
</span><a href="#local-6989586621679704554"><span class="hs-identifier hs-var">f</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">Basic -&gt; LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#_basicLibVisibility"><span class="hs-identifier hs-var hs-var">_basicLibVisibility</span></a></span><span> </span><span class="annot"><span class="annottext">Basic
</span><a href="#local-6989586621679704553"><span class="hs-identifier hs-var">b</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-284"></span><span class="hs-pragma">{-# INLINE</span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibVisibility"><span class="hs-pragma hs-type">basicLibVisibility</span></a></span><span> </span><span class="hs-pragma">#-}</span><span>
</span><span id="line-285"></span><span>
</span><span id="line-286"></span><span id="local-6989586621679705443"><span id="local-6989586621679705444"><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicFieldGrammar"><span class="hs-identifier hs-type">basicFieldGrammar</span></a></span><span>
</span><span id="line-287"></span><span>    </span><span class="hs-glyph">::</span><span> </span><span class="hs-special">(</span><span> </span><span class="annot"><a href="Distribution.FieldGrammar.Class.html#FieldGrammar"><span class="hs-identifier hs-type">FieldGrammar</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="annot"><a href="#local-6989586621679705443"><span class="hs-identifier hs-type">g</span></a></span><span class="hs-special">,</span><span> </span><span class="annot"><a href="../../base/src/GHC.Base.html#Applicative"><span class="hs-identifier hs-type">Applicative</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="#local-6989586621679705443"><span class="hs-identifier hs-type">g</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-288"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibility"><span class="hs-identifier hs-type">LibraryVisibility</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-289"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.PackageName.html#PackageName"><span class="hs-identifier hs-type">PackageName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-290"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="../../base/src/Data.Functor.Identity.html#Identity"><span class="hs-identifier hs-type">Identity</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.UnqualComponentName.html#UnqualComponentName"><span class="hs-identifier hs-type">UnqualComponentName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-291"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-type">MQuoted</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-292"></span><span>       </span><span class="hs-special">,</span><span> </span><span class="annot"><a href="#local-6989586621679705444"><span class="hs-identifier hs-type">c</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-type">MQuoted</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.Version.html#Version"><span class="hs-identifier hs-type">Version</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-293"></span><span>       </span><span class="hs-special">)</span><span>
</span><span id="line-294"></span><span>    </span><span class="hs-glyph">=&gt;</span><span> </span><span class="annot"><a href="#local-6989586621679705443"><span class="hs-identifier hs-type">g</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span><span> </span><span class="annot"><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-type">Basic</span></a></span></span></span><span>
</span><span id="line-295"></span><span id="basicFieldGrammar"><span class="annot"><span class="annottext">basicFieldGrammar :: forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *).
(FieldGrammar c g, Applicative (g Basic),
 c (Identity LibraryVisibility), c (Identity PackageName),
 c (Identity UnqualComponentName), c (MQuoted MungedPackageName),
 c (MQuoted Version)) =&gt;
g Basic Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicFieldGrammar"><span class="hs-identifier hs-var hs-var">basicFieldGrammar</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
-&gt; Version
-&gt; Maybe PackageName
-&gt; Maybe UnqualComponentName
-&gt; LibraryVisibility
-&gt; Basic
</span><a href="#local-6989586621679704509"><span class="hs-identifier hs-var">mkBasic</span></a></span><span>
</span><span id="line-296"></span><span>    </span><span class="annot"><span class="annottext">(MungedPackageName
 -&gt; Version
 -&gt; Maybe PackageName
 -&gt; Maybe UnqualComponentName
 -&gt; LibraryVisibility
 -&gt; Basic)
-&gt; g Basic MungedPackageName
-&gt; g Basic
     (Version
      -&gt; Maybe PackageName
      -&gt; Maybe UnqualComponentName
      -&gt; LibraryVisibility
      -&gt; Basic)
forall (f :: * -&gt; *) a b. Functor f =&gt; (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/Data.Functor.html#%3C%24%3E"><span class="hs-operator hs-var">&lt;$&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (MungedPackageName -&gt; MQuoted MungedPackageName)
-&gt; ALens' Basic MungedPackageName
-&gt; MungedPackageName
-&gt; g Basic MungedPackageName
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;name&quot;</span></span><span>          </span><span class="annot"><span class="annottext">MungedPackageName -&gt; MQuoted MungedPackageName
forall a. a -&gt; MQuoted a
</span><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-var">MQuoted</span></a></span><span>  </span><span class="annot"><span class="annottext">ALens' Basic MungedPackageName
Lens' Basic MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicName"><span class="hs-identifier hs-var">basicName</span></a></span><span> </span><span class="hs-special">(</span><span class="annot"><span class="annottext">InstalledPackageInfo -&gt; MungedPackageName
</span><a href="Distribution.Types.InstalledPackageInfo.html#mungedPackageName"><span class="hs-identifier hs-var">mungedPackageName</span></a></span><span> </span><span class="annot"><span class="annottext">InstalledPackageInfo
</span><a href="Distribution.Types.InstalledPackageInfo.html#emptyInstalledPackageInfo"><span class="hs-identifier hs-var">emptyInstalledPackageInfo</span></a></span><span class="hs-special">)</span><span>
</span><span id="line-297"></span><span>    </span><span class="annot"><span class="annottext">g Basic
  (Version
   -&gt; Maybe PackageName
   -&gt; Maybe UnqualComponentName
   -&gt; LibraryVisibility
   -&gt; Basic)
-&gt; g Basic Version
-&gt; g Basic
     (Maybe PackageName
      -&gt; Maybe UnqualComponentName -&gt; LibraryVisibility -&gt; Basic)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#%3C%2A%3E"><span class="hs-operator hs-var">&lt;*&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; (Version -&gt; MQuoted Version)
-&gt; ALens' Basic Version
-&gt; Version
-&gt; g Basic Version
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) b a s.
(FieldGrammar c g, c b, Newtype a b, Eq a) =&gt;
FieldName -&gt; (a -&gt; b) -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDefAla"><span class="hs-identifier hs-var">optionalFieldDefAla</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;version&quot;</span></span><span>       </span><span class="annot"><span class="annottext">Version -&gt; MQuoted Version
forall a. a -&gt; MQuoted a
</span><a href="Distribution.FieldGrammar.Newtypes.html#MQuoted"><span class="hs-identifier hs-var">MQuoted</span></a></span><span>  </span><span class="annot"><span class="annottext">ALens' Basic Version
Lens' Basic Version
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicVersion"><span class="hs-identifier hs-var">basicVersion</span></a></span><span> </span><span class="annot"><span class="annottext">Version
</span><a href="Distribution.Types.Version.html#nullVersion"><span class="hs-identifier hs-var">nullVersion</span></a></span><span>
</span><span id="line-298"></span><span>    </span><span class="annot"><span class="annottext">g Basic
  (Maybe PackageName
   -&gt; Maybe UnqualComponentName -&gt; LibraryVisibility -&gt; Basic)
-&gt; g Basic (Maybe PackageName)
-&gt; g Basic
     (Maybe UnqualComponentName -&gt; LibraryVisibility -&gt; Basic)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#%3C%2A%3E"><span class="hs-operator hs-var">&lt;*&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' Basic (Maybe PackageName) -&gt; g Basic (Maybe PackageName)
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) a s.
(FieldGrammar c g, c (Identity a)) =&gt;
FieldName -&gt; ALens' s (Maybe a) -&gt; g s (Maybe a)
</span><a href="Distribution.FieldGrammar.Class.html#optionalField"><span class="hs-identifier hs-var">optionalField</span></a></span><span>       </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;package-name&quot;</span></span><span>           </span><span class="annot"><span class="annottext">ALens' Basic (Maybe PackageName)
Lens' Basic (Maybe PackageName)
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicPkgName"><span class="hs-identifier hs-var">basicPkgName</span></a></span><span>
</span><span id="line-299"></span><span>    </span><span class="annot"><span class="annottext">g Basic (Maybe UnqualComponentName -&gt; LibraryVisibility -&gt; Basic)
-&gt; g Basic (Maybe UnqualComponentName)
-&gt; g Basic (LibraryVisibility -&gt; Basic)
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#%3C%2A%3E"><span class="hs-operator hs-var">&lt;*&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' Basic (Maybe UnqualComponentName)
-&gt; g Basic (Maybe UnqualComponentName)
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) a s.
(FieldGrammar c g, c (Identity a)) =&gt;
FieldName -&gt; ALens' s (Maybe a) -&gt; g s (Maybe a)
</span><a href="Distribution.FieldGrammar.Class.html#optionalField"><span class="hs-identifier hs-var">optionalField</span></a></span><span>       </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;lib-name&quot;</span></span><span>               </span><span class="annot"><span class="annottext">ALens' Basic (Maybe UnqualComponentName)
Lens' Basic (Maybe UnqualComponentName)
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibName"><span class="hs-identifier hs-var">basicLibName</span></a></span><span>
</span><span id="line-300"></span><span>    </span><span class="annot"><span class="annottext">g Basic (LibraryVisibility -&gt; Basic)
-&gt; g Basic LibraryVisibility -&gt; g Basic Basic
forall (f :: * -&gt; *) a b. Applicative f =&gt; f (a -&gt; b) -&gt; f a -&gt; f b
</span><a href="../../base/src/GHC.Base.html#%3C%2A%3E"><span class="hs-operator hs-var">&lt;*&gt;</span></a></span><span> </span><span class="annot"><span class="annottext">FieldName
-&gt; ALens' Basic LibraryVisibility
-&gt; LibraryVisibility
-&gt; g Basic LibraryVisibility
forall (c :: * -&gt; Constraint) (g :: * -&gt; * -&gt; *) s a.
(FieldGrammar c g, Functor (g s), c (Identity a), Eq a) =&gt;
FieldName -&gt; ALens' s a -&gt; a -&gt; g s a
</span><a href="Distribution.FieldGrammar.Class.html#optionalFieldDef"><span class="hs-identifier hs-var">optionalFieldDef</span></a></span><span>    </span><span class="annot"><span class="annottext">FieldName
</span><span class="hs-string">&quot;visibility&quot;</span></span><span>             </span><span class="annot"><span class="annottext">ALens' Basic LibraryVisibility
Lens' Basic LibraryVisibility
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#basicLibVisibility"><span class="hs-identifier hs-var">basicLibVisibility</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibilityPrivate"><span class="hs-identifier hs-var">LibraryVisibilityPrivate</span></a></span><span>
</span><span id="line-301"></span><span>  </span><span class="hs-keyword">where</span><span>
</span><span id="line-302"></span><span>    </span><span id="local-6989586621679704509"><span class="annot"><span class="annottext">mkBasic :: MungedPackageName
-&gt; Version
-&gt; Maybe PackageName
-&gt; Maybe UnqualComponentName
-&gt; LibraryVisibility
-&gt; Basic
</span><a href="#local-6989586621679704509"><span class="hs-identifier hs-var hs-var">mkBasic</span></a></span></span><span> </span><span id="local-6989586621679704504"><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704504"><span class="hs-identifier hs-var">n</span></a></span></span><span> </span><span id="local-6989586621679704503"><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704503"><span class="hs-identifier hs-var">v</span></a></span></span><span> </span><span id="local-6989586621679704502"><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704502"><span class="hs-identifier hs-var">pn</span></a></span></span><span> </span><span id="local-6989586621679704501"><span class="annot"><span class="annottext">Maybe UnqualComponentName
</span><a href="#local-6989586621679704501"><span class="hs-identifier hs-var">ln</span></a></span></span><span> </span><span id="local-6989586621679704500"><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704500"><span class="hs-identifier hs-var">lv</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
-&gt; Version
-&gt; Maybe PackageName
-&gt; LibraryName
-&gt; LibraryVisibility
-&gt; Basic
</span><a href="Distribution.Types.InstalledPackageInfo.FieldGrammar.html#Basic"><span class="hs-identifier hs-var">Basic</span></a></span><span> </span><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704504"><span class="hs-identifier hs-var">n</span></a></span><span> </span><span class="annot"><span class="annottext">Version
</span><a href="#local-6989586621679704503"><span class="hs-identifier hs-var">v</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe PackageName
</span><a href="#local-6989586621679704502"><span class="hs-identifier hs-var">pn</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704499"><span class="hs-identifier hs-var">ln'</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704498"><span class="hs-identifier hs-var">lv'</span></a></span><span>
</span><span id="line-303"></span><span>      </span><span class="hs-keyword">where</span><span>
</span><span id="line-304"></span><span>        </span><span id="local-6989586621679704499"><span class="annot"><span class="annottext">ln' :: LibraryName
</span><a href="#local-6989586621679704499"><span class="hs-identifier hs-var hs-var">ln'</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">LibraryName
-&gt; (UnqualComponentName -&gt; LibraryName)
-&gt; Maybe UnqualComponentName
-&gt; LibraryName
forall b a. b -&gt; (a -&gt; b) -&gt; Maybe a -&gt; b
</span><a href="../../base/src/Data.Maybe.html#maybe"><span class="hs-identifier hs-var">maybe</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="Distribution.Types.LibraryName.html#LMainLibName"><span class="hs-identifier hs-var">LMainLibName</span></a></span><span> </span><span class="annot"><span class="annottext">UnqualComponentName -&gt; LibraryName
</span><a href="Distribution.Types.LibraryName.html#LSubLibName"><span class="hs-identifier hs-var">LSubLibName</span></a></span><span> </span><span class="annot"><span class="annottext">Maybe UnqualComponentName
</span><a href="#local-6989586621679704501"><span class="hs-identifier hs-var">ln</span></a></span><span>
</span><span id="line-305"></span><span>        </span><span class="hs-comment">-- Older GHCs (&lt;8.8) always report installed libraries as private</span><span>
</span><span id="line-306"></span><span>        </span><span class="hs-comment">-- because their ghc-pkg builds with an older Cabal.</span><span>
</span><span id="line-307"></span><span>        </span><span class="hs-comment">-- So we always set LibraryVisibilityPublic for main (unnamed) libs.</span><span>
</span><span id="line-308"></span><span>        </span><span class="hs-comment">-- This can be removed once we stop supporting GHC&lt;8.8, at the</span><span>
</span><span id="line-309"></span><span>        </span><span class="hs-comment">-- condition that we keep marking main libraries as public when</span><span>
</span><span id="line-310"></span><span>        </span><span class="hs-comment">-- registering them.</span><span>
</span><span id="line-311"></span><span>        </span><span id="local-6989586621679704498"><span class="annot"><span class="annottext">lv' :: LibraryVisibility
</span><a href="#local-6989586621679704498"><span class="hs-identifier hs-var hs-var">lv'</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="hs-keyword">if</span><span>
</span><span id="line-312"></span><span>                </span><span class="hs-keyword">let</span><span> </span><span class="annot"><a href="Distribution.Types.MungedPackageName.html#MungedPackageName"><span class="hs-identifier hs-type">MungedPackageName</span></a></span><span> </span><span class="annot"><span class="annottext">PackageName
</span><span class="hs-identifier">_</span></span><span> </span><span id="local-6989586621679704493"><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704493"><span class="hs-identifier hs-var">mln</span></a></span></span><span> </span><span class="hs-glyph">=</span><span> </span><span class="annot"><span class="annottext">MungedPackageName
</span><a href="#local-6989586621679704504"><span class="hs-identifier hs-var">n</span></a></span><span> </span><span class="hs-keyword">in</span><span>
</span><span id="line-313"></span><span>                </span><span class="hs-comment">-- We need to check both because on ghc&lt;8.2 ln' will always</span><span>
</span><span id="line-314"></span><span>                </span><span class="hs-comment">-- be LMainLibName</span><span>
</span><span id="line-315"></span><span>                </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704499"><span class="hs-identifier hs-var">ln'</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName -&gt; LibraryName -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="Distribution.Types.LibraryName.html#LMainLibName"><span class="hs-identifier hs-var">LMainLibName</span></a></span><span> </span><span class="annot"><span class="annottext">Bool -&gt; Bool -&gt; Bool
</span><span class="hs-operator hs-var">&amp;&amp;</span></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="#local-6989586621679704493"><span class="hs-identifier hs-var">mln</span></a></span><span> </span><span class="annot"><span class="annottext">LibraryName -&gt; LibraryName -&gt; Bool
forall a. Eq a =&gt; a -&gt; a -&gt; Bool
</span><span class="hs-operator hs-var">==</span></span><span> </span><span class="annot"><span class="annottext">LibraryName
</span><a href="Distribution.Types.LibraryName.html#LMainLibName"><span class="hs-identifier hs-var">LMainLibName</span></a></span><span>
</span><span id="line-316"></span><span>              </span><span class="hs-keyword">then</span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="Distribution.Types.LibraryVisibility.html#LibraryVisibilityPublic"><span class="hs-identifier hs-var">LibraryVisibilityPublic</span></a></span><span>
</span><span id="line-317"></span><span>              </span><span class="hs-keyword">else</span><span> </span><span class="annot"><span class="annottext">LibraryVisibility
</span><a href="#local-6989586621679704500"><span class="hs-identifier hs-var">lv</span></a></span><span>
</span><span id="line-318"></span></pre></body></html>